cvs commit: apache/htdocs/manual/misc FAQ.html
coar97/05/28 12:02:15 Modified:htdocs/manual/misc FAQ.html Log: Corrected FAQ about Java to reflect the latest edition of reality as we know it. Revision ChangesPath 1.60 +21 -13apache/htdocs/manual/misc/FAQ.html Index: FAQ.html === RCS file: /export/home/cvs/apache/htdocs/manual/misc/FAQ.html,v retrieving revision 1.59 retrieving revision 1.60 diff -C3 -r1.59 -r1.60 *** FAQ.html 1997/05/19 21:10:22 1.59 --- FAQ.html 1997/05/28 19:02:13 1.60 *** *** 8,14 !--#include virtual=header.html -- H1Apache Server Frequently Asked Questions/H1 P ! $Revision: 1.59 $ ($Date: 1997/05/19 21:10:22 $) /P P The latest version of this FAQ is always available from the main --- 8,14 !--#include virtual=header.html -- H1Apache Server Frequently Asked Questions/H1 P ! $Revision: 1.60 $ ($Date: 1997/05/28 19:02:13 $) /P P The latest version of this FAQ is always available from the main *** *** 174,182 LIA HREF=#addlogHow do I add browsers and referrers to my logs?/A /LI -LIA HREF=#jdk1.xWhy do Java applets and applications not work - with documents on my Apache server?/A -/LI /OL /LI /UL --- 174,179 *** *** 953,977 As of version 1.2, Apache is an HTTP/1.1 (HyperText Transfer Protocol version 1.1) server. This fact is reflected in the protocol version that's included in the response headers sent to a client when ! processing a request. Unfortunately, the URL methods (URLConnection ! and friends) in the Java Development Kit (JDK) versions 1.0.2 through ! 1.1.1 expect to see the version string quot;HTTP/1.0quot; and do not ! correctly interpret the quot;HTTP/1.1quot; value Apache is sending ! (this part of the response is a declaration of what the server can do ! rather than a declaration of the dialect of the response). The result is that the JDK methods do not correctly parse the headers, and include them with the document content by mistake. /P P ! This is definitely a bug in the JDK, but it's unclear when (or ! whether) it will be fixed. In the meantime, a workaround is to tell Apache to quot;fakequot; an HTTP/1.0 response to requests that come from the JDK methods; this can be done by including a line such as the following in your server configuration files: /P P DL !DDCODEBrowserMatch HotJava/1.0 force-response-1.0/CODE /DD /DL /P --- 950,985 As of version 1.2, Apache is an HTTP/1.1 (HyperText Transfer Protocol version 1.1) server. This fact is reflected in the protocol version that's included in the response headers sent to a client when ! processing a request. Unfortunately, low-level Web access classes ! included in the Java Development Kit (JDK) version 1.0.2 expect to see ! the version string quot;HTTP/1.0quot; and do not correctly interpret ! the quot;HTTP/1.1quot; value Apache is sending (this part of the ! response is a declaration of what the server can do rather than a ! declaration of the dialect of the response). The result is that the JDK methods do not correctly parse the headers, and include them with the document content by mistake. /P P ! This is definitely a bug in the JDK 1.0.2 foundation classes from Sun, ! and it has been fixed in version 1.1. However, the classes in ! question are part of the virtual machine environment, which means ! they're part of the Web browser (if Java-enabled) or the Java ! environment on the client system - so even if you develop ! EMyour/EM classes with a recent JDK, the eventual users might ! encounter the problem. ! The classes involved are replaceable by vendors implementing the ! Java virtual machine environment, and so even those that are based ! upon the 1.0.2 version may not have this problem. ! /P ! P ! In the meantime, a workaround is to tell Apache to quot;fakequot; an HTTP/1.0 response to requests that come from the JDK methods; this can be done by including a line such as the following in your server configuration files: /P P DL !DDCODEBrowserMatch Java/1.0 force-response-1.0/CODE /DD /DL /P
cvs commit: apache/htdocs/manual index.html
coar97/05/28 12:11:47 Modified:htdocs/manual index.html Log: Added link to minimalist search engine for master manual. Reviewed by: Dean Gaudet, Jim Jagielski Revision ChangesPath 1.10 +7 -0 apache/htdocs/manual/index.html Index: index.html === RCS file: /export/home/cvs/apache/htdocs/manual/index.html,v retrieving revision 1.9 retrieving revision 1.10 diff -C3 -r1.9 -r1.10 *** index.html1997/04/25 00:06:59 1.9 --- index.html1997/05/28 19:11:46 1.10 *** *** 23,28 --- 23,35 /ul H3a name=refApache Reference Manual/a/h3 + UL + LIA + HREF=http://www.apache.org/manual-index/docs; + STRONGSearch/STRONG/A + the master manual pages for key words + /LI + /UL ul liA HREF=install.htmlCompiling and Installing Apache/A liA HREF=invoking.htmlStarting Apache/A
cvs commit: apache/htdocs/manual index.html
coar97/05/28 12:18:51 Modified:htdocs/manual index.html Log: Argh. Forgot to add link to (not-included-with-dist) page about Java. Revision ChangesPath 1.11 +3 -0 apache/htdocs/manual/index.html Index: index.html === RCS file: /export/home/cvs/apache/htdocs/manual/index.html,v retrieving revision 1.10 retrieving revision 1.11 diff -C3 -r1.10 -r1.11 *** index.html1997/05/28 19:11:46 1.10 --- index.html1997/05/28 19:18:50 1.11 *** *** 49,54 --- 49,57 LIA HREF=misc/security_tips.htmlSecurity tips/A LIA HREF=misc/perf.htmlPerformance hints/a for heavily loaded web servers. LIA HREF=misc/fin_wait_2.htmlDiscussion of the FIN_WAIT_2 problem/A + LIA + HREF=http://www.apache.org/info/jdk-102; + Java's 1.0.2 virtual machine and HTTP/1.1/A /ul !--#include virtual=footer.html --
cvs commit: apache-site mirrors.html
brian 97/05/28 13:02:25 Modified:. mirrors.html Log: Two mirrors became one, and a new one in thailand. Revision ChangesPath 1.2 +3 -3 apache-site/mirrors.html Index: mirrors.html === RCS file: /export/home/cvs/apache-site/mirrors.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C3 -r1.1 -r1.2 *** mirrors.html 1997/05/27 06:32:50 1.1 --- mirrors.html 1997/05/28 20:02:23 1.2 *** *** 33,44 !-- [EMAIL PROTECTED] -- A HREF=http://sunsite.mff.cuni.cz/web/apache/;cz/A - !-- [EMAIL PROTECTED] -- ! A HREF=http://apache.www.nacamar.de/;de(1)/A - !-- [EMAIL PROTECTED] -- A HREF=http://www.cs.tu-berlin.de/home/ftp/pub/net/www/apache/;de(2)/A - !-- [EMAIL PROTECTED] -- - A HREF=http://www.apache.de/;de(3)/A - - !-- [EMAIL PROTECTED] -- A HREF=http://sunsite.auc.dk/apache/;dk/A - !-- [EMAIL PROTECTED] -- A HREF=http://www.pal.xgw.fi/apache/;fi/A - --- 33,42 !-- [EMAIL PROTECTED] -- A HREF=http://sunsite.mff.cuni.cz/web/apache/;cz/A - !-- [EMAIL PROTECTED] -- ! A HREF=http://www.apache.de/;de(1)/A - !-- [EMAIL PROTECTED] -- A HREF=http://www.cs.tu-berlin.de/home/ftp/pub/net/www/apache/;de(2)/A - !-- [EMAIL PROTECTED] -- A HREF=http://sunsite.auc.dk/apache/;dk/A - !-- [EMAIL PROTECTED] -- A HREF=http://www.pal.xgw.fi/apache/;fi/A - *** *** 119,124 --- 117,124 !-- [EMAIL PROTECTED] -- A HREF=http://www.kabi.si/apache/;si/A - !-- [EMAIL PROTECTED] -- + A HREF=http://www.riubon.ac.th/pub/apache/;th/A - + !-- [EMAIL PROTECTED] -- A HREF=http://www.uuserv.net.tw/apache/;tw(1)/A - !-- [EMAIL PROTECTED] -- A HREF=http://www.ucnet.hinet.net/apache/;tw(2)/A -
cvs commit: apache/src http_main.c http_protocol.c httpd.h
jim 97/05/28 16:52:02 Modified:src http_main.c http_protocol.c httpd.h Log: Eds patches which Virtual Hosts on different ports and timeout logging Revision ChangesPath 1.147 +5 -0 apache/src/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache/src/http_main.c,v retrieving revision 1.146 retrieving revision 1.147 diff -C3 -r1.146 -r1.147 *** http_main.c 1997/05/27 04:41:50 1.146 --- http_main.c 1997/05/28 23:51:57 1.147 *** *** 415,420 --- 415,425 else log_req = log_req-prev; } + /* If we didn't get SIGPIPE and we didn't set the method number, + * then it's safe to say the client timed out + */ + if (sig != SIGPIPE log_req-method_number == M_NONE) + log_req-status = HTTP_REQUEST_TIME_OUT; if (!current_conn-keptalive) log_transaction(log_req); 1.124 +3 -1 apache/src/http_protocol.c Index: http_protocol.c === RCS file: /export/home/cvs/apache/src/http_protocol.c,v retrieving revision 1.123 retrieving revision 1.124 diff -C3 -r1.123 -r1.124 *** http_protocol.c 1997/05/27 04:41:51 1.123 --- http_protocol.c 1997/05/28 23:51:58 1.124 *** *** 711,717 /* search all the names from VirtualHost directive */ for( sar = s-addrs; sar; sar = sar-next ) { ! if( !strcasecmp( sar-virthost, host ) ) { r-server = r-connection-server = s; if( r-hostlen !strncmp( r-uri, http://;, 7) ) { r-uri += r-hostlen; --- 711,718 /* search all the names from VirtualHost directive */ for( sar = s-addrs; sar; sar = sar-next ) { ! if( !strcasecmp( sar-virthost, host ) !( (sar-host_port == 0) || (port == sar-host_port) )) { r-server = r-connection-server = s; if( r-hostlen !strncmp( r-uri, http://;, 7) ) { r-uri += r-hostlen; *** *** 789,794 --- 790,796 * Only changed by die(), or (bletch!) * scan_script_header... */ + r-method_number = M_NONE; /* Until we finish reading a request */ /* Get the request... */ 1.106 +1 -0 apache/src/httpd.h Index: httpd.h === RCS file: /export/home/cvs/apache/src/httpd.h,v retrieving revision 1.105 retrieving revision 1.106 diff -C3 -r1.105 -r1.106 *** httpd.h 1997/05/27 04:41:49 1.105 --- httpd.h 1997/05/28 23:51:59 1.106 *** *** 347,352 --- 347,353 #define METHODS 8 + #define M_NONE -1 #define M_GET 0 #define M_PUT 1 #define M_POST 2
cvs commit: apache/src http_main.c http_protocol.c httpd.h
fielding97/05/28 20:10:56 Modified:src http_main.c http_protocol.c httpd.h Log: Revert the logging 408 changes, since it is unsafe to set method_number to a negative value (it is used in bit shift operations) and because there is a much easier way to do the same thing. Revision ChangesPath 1.148 +0 -5 apache/src/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache/src/http_main.c,v retrieving revision 1.147 retrieving revision 1.148 diff -C3 -r1.147 -r1.148 *** http_main.c 1997/05/28 23:51:57 1.147 --- http_main.c 1997/05/29 03:10:52 1.148 *** *** 415,425 else log_req = log_req-prev; } - /* If we didn't get SIGPIPE and we didn't set the method number, - * then it's safe to say the client timed out - */ - if (sig != SIGPIPE log_req-method_number == M_NONE) - log_req-status = HTTP_REQUEST_TIME_OUT; if (!current_conn-keptalive) log_transaction(log_req); --- 415,420 1.125 +0 -1 apache/src/http_protocol.c Index: http_protocol.c === RCS file: /export/home/cvs/apache/src/http_protocol.c,v retrieving revision 1.124 retrieving revision 1.125 diff -C3 -r1.124 -r1.125 *** http_protocol.c 1997/05/28 23:51:58 1.124 --- http_protocol.c 1997/05/29 03:10:53 1.125 *** *** 790,796 * Only changed by die(), or (bletch!) * scan_script_header... */ - r-method_number = M_NONE; /* Until we finish reading a request */ /* Get the request... */ --- 790,795 1.107 +0 -1 apache/src/httpd.h Index: httpd.h === RCS file: /export/home/cvs/apache/src/httpd.h,v retrieving revision 1.106 retrieving revision 1.107 diff -C3 -r1.106 -r1.107 *** httpd.h 1997/05/28 23:51:59 1.106 --- httpd.h 1997/05/29 03:10:54 1.107 *** *** 347,353 #define METHODS 8 - #define M_NONE -1 #define M_GET 0 #define M_PUT 1 #define M_POST 2 --- 347,352
cvs commit: apache/src CHANGES http_protocol.c
fielding97/05/28 20:44:33 Modified:src CHANGES http_protocol.c Log: Initialize r-status as request-timed-out until after we successfully read the request-line and header fields. Submitted by: Roy Fielding and Ed Korthof, PR#601 Revision ChangesPath 1.281 +7 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.280 retrieving revision 1.281 diff -C3 -r1.280 -r1.281 *** CHANGES 1997/05/27 08:01:10 1.280 --- CHANGES 1997/05/29 03:44:30 1.281 *** *** 1,5 --- 1,12 Changes with Apache 1.2 + *) Log correct status code if we timeout before receiving a request (408) + or if we received a request-line that was too long to process (414). + [Ed Korthof and Roy Fielding] PR#601 + + *) Virtual hosts with the same ServerName, but on different ports, were + not being selected properly. [Ed Korthof] + *) Added code to return the requested IP address from proxy_host2addr() if gethostbyaddr() fails due to reverse DNS lookup problems. Original change submitted by Jozsef Hollosi [EMAIL PROTECTED]. 1.126 +6 -6 apache/src/http_protocol.c Index: http_protocol.c === RCS file: /export/home/cvs/apache/src/http_protocol.c,v retrieving revision 1.125 retrieving revision 1.126 diff -C3 -r1.125 -r1.126 *** http_protocol.c 1997/05/29 03:10:53 1.125 --- http_protocol.c 1997/05/29 03:44:31 1.126 *** *** 630,638 signal (SIGUSR1, SIG_IGN); bsetflag( conn-client, B_SAFEREAD, 0 ); if (len == (HUGE_STRING_LEN - 1)) { ! log_printf(r-server, request failed for %s, reason: header too long, get_remote_host(r-connection, r-per_dir_config, REMOTE_NAME)); ! return 0; /* Should be a 414 error status instead */ } r-request_time = time(NULL); --- 630,639 signal (SIGUSR1, SIG_IGN); bsetflag( conn-client, B_SAFEREAD, 0 ); if (len == (HUGE_STRING_LEN - 1)) { ! log_printf(r-server, request failed for %s, reason: URI too long, get_remote_host(r-connection, r-per_dir_config, REMOTE_NAME)); ! r-status = HTTP_REQUEST_URI_TOO_LARGE; ! return 0; } r-request_time = time(NULL); *** *** 786,795 r-read_length = 0; r-read_body= REQUEST_NO_BODY; ! r-status = HTTP_OK;/* Until further notice. ! * Only changed by die(), or (bletch!) ! * scan_script_header... ! */ /* Get the request... */ --- 787,793 r-read_length = 0; r-read_body= REQUEST_NO_BODY; ! r-status = HTTP_REQUEST_TIME_OUT; /* Until we get a request */ /* Get the request... */ *** *** 803,808 --- 801,808 get_mime_headers (r); } kill_timeout(r); + + r-status = HTTP_OK;/* Until further notice. */ /* handle Host header here, to get virtual server */
cvs commit: apache/src CHANGES mod_include.c
fielding97/05/28 21:23:13 Modified:src CHANGES mod_include.c Log: If Options Includes and USE_PERL_SSI is defined, allow #perl SSI to invoke routines governed by mod_perl. Submitted by: Rob Hartill Reviewed by: Randy Terbush, Doug MacEachern, Roy Fielding Revision ChangesPath 1.282 +3 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.281 retrieving revision 1.282 diff -C3 -r1.281 -r1.282 *** CHANGES 1997/05/29 03:44:30 1.281 --- CHANGES 1997/05/29 04:23:11 1.282 *** *** 1,5 --- 1,8 Changes with Apache 1.2 + *) Added undocumented perl SSI mechanism for -DUSE_PERL_SSI and mod_perl. + [Rob Hartill] + *) Log correct status code if we timeout before receiving a request (408) or if we received a request-line that was too long to process (414). [Ed Korthof and Roy Fielding] PR#601 1.32 +46 -0 apache/src/mod_include.c Index: mod_include.c === RCS file: /export/home/cvs/apache/src/mod_include.c,v retrieving revision 1.31 retrieving revision 1.32 diff -C3 -r1.31 -r1.32 *** mod_include.c 1997/05/08 13:09:25 1.31 --- mod_include.c 1997/05/29 04:23:12 1.32 *** *** 57,63 --- 57,78 * incorporated into the Apache module framework by rst. * */ + /* + * sub key may be anything a Perl*Handler can be: + * subroutine name, package name (defaults to package::handler), + * Class-method call or anoymous sub {} + * + * Child !--#perl sub=sub {print $$} -- accessed + * !--#perl sub=sub {print ++$Access::Cnt } -- times. br + * + * !--#perl arg=one sub=mymod::includer -- + * + * -Doug MacEachern + */ + #ifdef USE_PERL_SSI + #include modules/perl/mod_perl.h + #else #include httpd.h #include http_config.h #include http_request.h *** *** 66,71 --- 81,87 #include http_log.h #include http_main.h #include util_script.h + #endif #define STARTING_SEQUENCE !--# #define ENDING_SEQUENCE -- *** *** 710,715 --- 726,757 } } } + #ifdef USE_PERL_SSI + int handle_perl (FILE *in, request_rec *r, char *error) { + char tag[MAX_STRING_LEN]; + char *tag_val; + SV *sub = Nullsv; + AV *av = newAV(); + + if (!(allow_options (r) OPT_INCLUDES)) { + log_printf(r-server, + httpd: #perl SSI disallowed by IncludesNoExec in %s, r-filename); + return DECLINED; + } + while(1) { + if(!(tag_val = get_tag (r-pool, in, tag, MAX_STRING_LEN, 1))) + break; + if(strnEQ(tag, sub, 3)) + sub = newSVpv(tag_val,0); + else if(strnEQ(tag, arg, 3)) + av_push(av, newSVpv(tag_val,0)); + else if(strnEQ(tag,done, 4)) + break; + } + perl_call_handler(sub, r, av); + return OK; + } + #endif /* error and tf must point to a string with room for at * least MAX_STRING_LEN characters *** *** 1674,1679 --- 1716,1725 ret=handle_flastmod(f, r, error, timefmt); else if(!strcmp(directive,printenv)) ret=handle_printenv(f, r, error); + #ifdef USE_PERL_SSI + else if(!strcmp(directive,perl)) + ret=handle_perl(f, r, error); + #endif else { log_printf(r-server, httpd: unknown directive %s in parsed doc %s,
cvs commit: apache/src CHANGES conf.h http_main.c rfc1413.c
fielding97/05/28 21:50:29 Modified:src CHANGES conf.h http_main.c rfc1413.c Log: Fixed problem on Irix with servers hanging in IdentityCheck, apparently due to a mismatch between sigaction and setjmp. Submitted by: Roy Fielding, PR#502 Reviewed by: Jim Jagielski, Randy Terbush, Dean Gaudet Revision ChangesPath 1.283 +4 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.282 retrieving revision 1.283 diff -C3 -r1.282 -r1.283 *** CHANGES 1997/05/29 04:23:11 1.282 --- CHANGES 1997/05/29 04:50:25 1.283 *** *** 3,8 --- 3,12 *) Added undocumented perl SSI mechanism for -DUSE_PERL_SSI and mod_perl. [Rob Hartill] + *) Fixed problem on Irix with servers hanging in IdentityCheck, + apparently due to a mismatch between sigaction and setjmp. + [Roy Fielding] PR#502 + *) Log correct status code if we timeout before receiving a request (408) or if we received a request-line that was too long to process (414). [Ed Korthof and Roy Fielding] PR#601 1.98 +10 -1 apache/src/conf.h Index: conf.h === RCS file: /export/home/cvs/apache/src/conf.h,v retrieving revision 1.97 retrieving revision 1.98 diff -C3 -r1.97 -r1.98 *** conf.h1997/05/01 17:36:24 1.97 --- conf.h1997/05/29 04:50:26 1.98 *** *** 61,67 /* Define one of these according to your system. */ #if defined(MPE) - #include setjmp.h #include sys/times.h #define JMP_BUF sigjmp_buf #define NO_SETSID --- 61,66 *** *** 650,655 --- 649,664 #endif #define signal(s,f) ap_signal(s,f) Sigfunc *signal(int signo, Sigfunc *func); + #endif + + #include setjmp.h + + #if defined(USE_LONGJMP) + #define ap_longjmp(x, y)longjmp((x), (y)) + #define ap_setjmp(x)setjmp(x) + #else + #define ap_longjmp(x, y)siglongjmp((x), (y)) + #define ap_setjmp(x)sigsetjmp((x), 1) #endif /* Finding offsets of elements within structures. 1.149 +0 -9 apache/src/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache/src/http_main.c,v retrieving revision 1.148 retrieving revision 1.149 diff -C3 -r1.148 -r1.149 *** http_main.c 1997/05/29 03:10:52 1.148 --- http_main.c 1997/05/29 04:50:27 1.149 *** *** 84,90 #include http_conf_globals.h #include http_core.h /* for get_remote_host */ #include scoreboard.h - #include setjmp.h #include assert.h #include sys/stat.h #ifdef HAVE_SHMGET --- 84,89 *** *** 180,193 #define ap_killpg(x, y) (kill (-(x), (y))) #else #define ap_killpg(x, y) (killpg ((x), (y))) - #endif - - #if defined(USE_LONGJMP) - #define ap_longjmp(x, y)(longjmp ((x), (y))) - #define ap_setjmp(x)(setjmp (x)) - #else - #define ap_longjmp(x, y)(siglongjmp ((x), (y))) - #define ap_setjmp(x)(sigsetjmp ((x), 1)) #endif #if defined(USE_FCNTL_SERIALIZED_ACCEPT) --- 179,184 1.10 +10 -14apache/src/rfc1413.c Index: rfc1413.c === RCS file: /export/home/cvs/apache/src/rfc1413.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C3 -r1.9 -r1.10 *** rfc1413.c 1997/03/07 17:43:36 1.9 --- rfc1413.c 1997/05/29 04:50:27 1.10 *** *** 72,85 /* Rewritten by David Robinson */ ! #include httpd.h/* for server_rec, conn_rec */ #include http_log.h /* for log_unixerr */ #include rfc1413.h - /* System libraries. */ - - #include setjmp.h - #ifndef SCO extern char *strchr(); extern char *inet_ntoa(); --- 72,81 /* Rewritten by David Robinson */ ! #include httpd.h/* for server_rec, conn_rec, ap_longjmp, etc. */ #include http_log.h /* for log_unixerr */ #include rfc1413.h #ifndef SCO extern char *strchr(); extern char *inet_ntoa(); *** *** 93,105 /* rough limit on the amount of data we accept. */ #define RFC1413_MAXDATA 1000 #define RFC1413_TIMEOUT 30 #define ANY_PORT0 /* Any old port will do */ #define FROM_UNKNOWN unknown ! int rfc1413_timeout = RFC1413_TIMEOUT;/* Global so it can be changed */ ! ! static jmp_buf timebuf; /* bind_connect - bind both ends of a socket */ --- 89,101 /*
cvs commit: apache/src buff.c
fielding97/05/28 22:21:16 Modified:src buff.c Log: saferead must stop reading if the buffer has been marked in error (i.e., a timeout has occurred). Necessary for proxy timeouts. Submitted by: Petr Lampa Reviewed by: Roy Fielding Revision ChangesPath 1.26 +1 -1 apache/src/buff.c Index: buff.c === RCS file: /export/home/cvs/apache/src/buff.c,v retrieving revision 1.25 retrieving revision 1.26 diff -C3 -r1.25 -r1.26 *** buff.c1997/04/27 06:23:21 1.25 --- buff.c1997/05/29 05:21:15 1.26 *** *** 325,331 } do { rv = read( fb-fd_in, buf, nbyte ); ! } while ( rv == -1 errno == EINTR ); return( rv ); } --- 325,331 } do { rv = read( fb-fd_in, buf, nbyte ); ! } while (rv == -1 errno == EINTR !(fb-flags B_EOUT)); return( rv ); }