randy 96/12/17 12:42:40
Modified: src CHANGES mod_cgi.c Log: Reset timeout while reading via get_client_block() in mod_cgi.c Fixes failed file transfer problems for _large_ files. Reviewed by: Randy Terbush Submitted by: Rasmus Lerdorf Revision Changes Path 1.89 +5 -1 apache/src/CHANGES Index: CHANGES =================================================================== RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.88 retrieving revision 1.89 diff -C3 -r1.88 -r1.89 *** CHANGES 1996/12/17 20:30:46 1.88 --- CHANGES 1996/12/17 20:42:37 1.89 *************** *** 1,10 **** Changes with Apache 1.2b3: *) Add the ability to pass different Makefile.tmpl files to Configure ! using the -make flag. *) Fix coredump triggered when sending a SIGHUP to the server caused by a dereference of an unitialized pointer in the listen_rec. *) Add FILEPATH_INFO variable to CGI environment, which is equal to PATH_INFO from previous versions of Apache (in certain situations, --- 1,14 ---- Changes with Apache 1.2b3: + *) Reset timeout while reading via get_client_block() in mod_cgi.c + Fixes problem with timed out transfers of large files. [Rasmus Lerdorf] + *) Add the ability to pass different Makefile.tmpl files to Configure ! using the -make flag. [Rob Hartill] *) Fix coredump triggered when sending a SIGHUP to the server caused by a dereference of an unitialized pointer in the listen_rec. + [Ben Laurie] *) Add FILEPATH_INFO variable to CGI environment, which is equal to PATH_INFO from previous versions of Apache (in certain situations, 1.24 +2 -1 apache/src/mod_cgi.c Index: mod_cgi.c =================================================================== RCS file: /export/home/cvs/apache/src/mod_cgi.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C3 -r1.23 -r1.24 *** mod_cgi.c 1996/12/01 20:28:55 1.23 --- mod_cgi.c 1996/12/17 20:42:38 1.24 *************** *** 429,435 **** if ((dbpos + len_read) > conf->bufbytes) dbsize = conf->bufbytes - dbpos; else dbsize = len_read; ! strncpy(dbuf + dbpos, argsbuffer, dbsize); dbpos += dbsize; } if (fwrite(argsbuffer, 1, len_read, script_out) < (size_t)len_read) { --- 429,436 ---- if ((dbpos + len_read) > conf->bufbytes) dbsize = conf->bufbytes - dbpos; else dbsize = len_read; ! reset_timeout(r); ! memcpy(dbuf + dbpos, argsbuffer, dbsize); dbpos += dbsize; } if (fwrite(argsbuffer, 1, len_read, script_out) < (size_t)len_read) {