cvs commit: apache/htdocs index.html

1997-06-30 Thread Rodent of Unusual Size
coar97/06/30 03:39:08

  Modified:htdocsindex.html
  Log:
Add text to make it clear that the "it worked" page has to do
with the server *installation*, not the web site on which it
may appear.
  
  Submitted by: Rob Hartill
  
  Revision  ChangesPath
  1.7   +21 -7 apache/htdocs/index.html
  
  Index: index.html
  ===
  RCS file: /export/home/cvs/apache/htdocs/index.html,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -C3 -r1.6 -r1.7
  *** index.html1997/06/24 18:38:24 1.6
  --- index.html1997/06/30 10:39:08 1.7
  ***
  *** 1,7 


 
  !   Test Page for Apache
 

 

 
  !   Test Page for Apache Installation
 

 
  It Worked!
  
  !   If you can see this, then your 
  !   http://www.apache.org/";>Apache installation was 
  !   successful.  You may now add content to this directory and 
  !   replace this page.
  
  
  !   The Apache documentation has been
  !   included with this distribution.
  
  
  You are free to use the image below on an Apache-powered web
  --- 13,40 
 >
  It Worked!
  
  !   If you can see this, it means that the installation of the
  !   http://www.apache.org/";
  !   >Apache
  !   software on this system was successful.  You may now add content to
  !   this directory and replace this page.
  
  +   
  +   
  +If you are seeing this instead of the content you expected, please
  +contact the administrator of the site involved.  If
  +you send mail about this to the authors of the Apache software, who 
almost
  +certainly have nothing to do with this site, your message will be
  +ignored.
  +   
  +   
  
  !   The Apache
  !   documentation
  !   has been included with this distribution.
  
  
  You are free to use the image below on an Apache-powered web
  
  
  


cvs commit: apache/src buff.c buff.h http_main.c

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 13:28:54

  Modified:src   buff.c buff.h http_main.c
  Log:
  Allow for replacing standalone_main.  Allow the use of sfio in buff.c.
  
  Submitted by: Doug MacEachern <[EMAIL PROTECTED]>
  
  Revision  ChangesPath
  1.33  +67 -5 apache/src/buff.c
  
  Index: buff.c
  ===
  RCS file: /export/home/cvs/apache/src/buff.c,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -C3 -r1.32 -r1.33
  *** buff.c1997/06/29 19:27:20 1.32
  --- buff.c1997/06/30 20:28:50 1.33
  ***
  *** 200,206 
{
int rv;

  ! #ifdef WIN32
if (fb->flags & B_SOCKET) {
rv = recvwithtimeout( fb->fd_in, buf, nbyte, 0 );
if (rv == SOCKET_ERROR)
  --- 200,206 
{
int rv;

  ! #if defined (WIN32)
if (fb->flags & B_SOCKET) {
rv = recvwithtimeout( fb->fd_in, buf, nbyte, 0 );
if (rv == SOCKET_ERROR)
  ***
  *** 218,224 
{
int rv;

  ! #ifdef WIN32
if (fb->flags & B_SOCKET) {
rv = sendwithtimeout( fb->fd, buf, nbyte, 0);
if (rv == SOCKET_ERROR)
  --- 218,224 
{
int rv;

  ! #if defined(WIN32)
if (fb->flags & B_SOCKET) {
rv = sendwithtimeout( fb->fd, buf, nbyte, 0);
if (rv == SOCKET_ERROR)
  ***
  *** 226,233 
}
else
rv = write( fb->fd, buf, nbyte );
#else
  ! rv = write( fb->fd, buf, nbyte );
#endif /* WIN32 */
return rv;
}
  --- 226,235 
}
else
rv = write( fb->fd, buf, nbyte );
  + #elif defined (B_SFIO)
  + i = sfwrite(fb->sf_out, buf, nbyte);
#else
  ! rv = write(fb->fd, buf, nbyte);
#endif /* WIN32 */
return rv;
}
  ***
  *** 279,284 
  --- 281,295 
fb->fd = -1;
fb->fd_in = -1;

  + #ifdef B_SFIO
  + fb->sf_in  = NULL;
  + fb->sf_out = NULL;
  + fb->sf_in  = sfnew(fb->sf_in, NIL(Void_t*),
  +(size_t)SF_UNBOUND, 0, SF_READ); 
  + fb->sf_out = sfnew(fb->sf_out, NIL(Void_t*), 
  +(size_t)SF_UNBOUND, 1, SF_WRITE);
  + #endif
  + 
return fb;
}

  ***
  *** 426,440 
return value;
}

  - 
/*
 * This is called instead of read() everywhere in here.  It implements
 * the B_SAFEREAD functionality -- which is to force a flush() if a read()
 * would block.  It also deals with the EINTR errno result from read().
 * return code is like read() except EINTR is eliminated.
 */
static int
  ! saferead( BUFF *fb, void *buf, int nbyte )
{
int rv;

  --- 437,462 
return value;
}

/*
 * This is called instead of read() everywhere in here.  It implements
 * the B_SAFEREAD functionality -- which is to force a flush() if a read()
 * would block.  It also deals with the EINTR errno result from read().
 * return code is like read() except EINTR is eliminated.
 */
  + 
  + 
  + #if !defined (B_SFIO) || defined (WIN32)
  + #define saferead saferead_guts
  + #else
static int
  ! saferead(BUFF *fb, char *buf, int nbyte)
  ! {
  ! return sfread(fb->sf_in, buf, nbyte);
  ! }
  ! #endif
  ! 
  ! static int
  ! saferead_guts(BUFF *fb, void *buf, int nbyte)
{
int rv;

  ***
  *** 461,466 
  --- 483,523 
return( rv );
}

  + #ifdef B_SFIO
  + int bsfio_read(Sfio_t *f, char *buf, int nbyte, apache_sfio *disc)
  + {
  + int rv;
  + BUFF *fb = disc->buff;
  + 
  + rv = saferead_guts(fb, buf, nbyte);
  + 
  + buf[rv] = '\0';
  + f->next = 0;
  + 
  + return(rv);
  + }
  + 
  + int bsfio_write(Sfio_t *f, char *buf, int nbyte, apache_sfio *disc)
  + {
  + return write(disc->buff->fd, buf, nbyte);
  + }
  + 
  + Sfdisc_t *bsfio_new(pool *p, BUFF *b)
  + {
  + apache_sfio*   disc;
  + 
  + if(!(disc = (apache_sfio*)palloc(p, sizeof(apache_sfio))) )
  + return (Sfdisc_t *)disc;
  + 
  + disc->disc.readf   = (Sfread_f)bsfio_read; 
  + disc->disc.writef  = (Sfwrite_f)bsfio_write;
  + disc->disc.seekf   = (Sfseek_f)NULL;
  + disc->disc.exceptf = (Sfexcept_f)NULL;
  + disc->buff = b;
  + 
  + return (Sfdisc_t *)disc;
  + }
  + #endif

/*
 * Read up to nbyte bytes into buf.
  ***
  *** 1069,1074 
  --- 1126,1136 
fb->flags |= B_EOF | B_EOUT;
fb->fd = -1;
fb->fd_in = -1;
  + 
  + #ifdef B_SFIO
  + sfclose(fb->sf_in);
  + sfclose(fb->sf_out);
  + #endif  

if (rc1 != 0) return rc1;
else if (rc2 != 0) return rc2;
  
  
  
  1.15  +18 -0 apache/src/buff.h
  
  Index: buff.h
  ===
  RCS file: /export/home/cvs/apache/src/buff.h,v
  retrieving revisio

cvs commit: apache/src CHANGES

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 13:30:53

  Modified:src   CHANGES
  Log:
  Forgot them CHANGES.
  
  Revision  ChangesPath
  1.312 +4 -0  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.311
  retrieving revision 1.312
  diff -C3 -r1.311 -r1.312
  *** CHANGES   1997/06/30 01:32:23 1.311
  --- CHANGES   1997/06/30 20:30:51 1.312
  ***
  *** 1,4 
  --- 1,8 
Changes with Apache 1.3
  +   
  +   *) API: It's possible to replace standalone_main (define STANDALONE_MAIN)
  +  and it's possible to use SFIO for the underlying i/o layer.
  +  [Doug MacEachern]

  *) Enhance UserDir directive (mod_userdir) to accept a list of
 usernames for the 'disable' keyword, and add 'enable user...' to
  
  
  


cvs commit: apache/src mod_userdir.c

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 13:38:54

  Modified:src   mod_userdir.c
  Log:
  Fix a compile warning.
  
  Revision  ChangesPath
  1.17  +4 -7  apache/src/mod_userdir.c
  
  Index: mod_userdir.c
  ===
  RCS file: /export/home/cvs/apache/src/mod_userdir.c,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -C3 -r1.16 -r1.17
  *** mod_userdir.c 1997/06/30 01:32:24 1.16
  --- mod_userdir.c 1997/06/30 20:38:53 1.17
  ***
  *** 161,173 
usertable = s_cfg->enabled_users;
}
else {
  ! optype = O_DEFAULT;
  ! }
  ! /*
  !  * If the first (only?) value isn't one of our keywords, just copy the
  !  * string to the userdir string.
  !  */
  ! if (optype == O_DEFAULT) {
s_cfg->userdir = pstrdup (cmd->pool, arg);
return NULL;
}
  --- 161,170 
usertable = s_cfg->enabled_users;
}
else {
  ! /*
  !  * If the first (only?) value isn't one of our keywords, just copy the
  !  * string to the userdir string.
  !  */
s_cfg->userdir = pstrdup (cmd->pool, arg);
return NULL;
}
  
  
  


cvs commit: apache/src buff.c conf.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 14:03:19

  Modified:src   buff.c conf.h
  Log:
  I want to be able to use inline, especially for some of the cleanups where
  we're factoring out common code.
  
  Revision  ChangesPath
  1.34  +0 -6  apache/src/buff.c
  
  Index: buff.c
  ===
  RCS file: /export/home/cvs/apache/src/buff.c,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -C3 -r1.33 -r1.34
  *** buff.c1997/06/30 20:28:50 1.33
  --- buff.c1997/06/30 21:03:16 1.34
  ***
  *** 190,201 

#endif /* WIN32 */

  - 
  - /* these are wrappers to make code below more readable */
  - #if !defined (__GNUC__)
  - #define inline
  - #endif
  - 
static inline int buff_read (BUFF *fb, void *buf, int nbyte)
{
int rv;
  --- 190,195 
  
  
  
  1.108 +5 -0  apache/src/conf.h
  
  Index: conf.h
  ===
  RCS file: /export/home/cvs/apache/src/conf.h,v
  retrieving revision 1.107
  retrieving revision 1.108
  diff -C3 -r1.107 -r1.108
  *** conf.h1997/06/29 19:27:20 1.107
  --- conf.h1997/06/30 21:03:17 1.108
  ***
  *** 738,743 
  --- 738,748 
#define ap_select   select
#endif

  + /* so that we can use inline on some critical functions */
  + #if !defined(__GNUC__)
  + #define inline
  + #endif
  + 
/* Finding offsets of elements within structures.
 * Taken from the X code... they've sweated portability of this stuff
 * so we don't have to.  Sigh...
  
  
  


cvs commit: apache/htdocs index.html

1997-06-30 Thread Rodent of Unusual Size
coar97/06/30 14:10:00

  Modified:htdocsTag: APACHE_1_2_X  index.html
  Log:
Bringing over changes from 1.3-dev (about how this is a server
*running* Apache, not the Apache website itself).
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.5.2.2   +21 -7 apache/htdocs/index.html
  
  Index: index.html
  ===
  RCS file: /export/home/cvs/apache/htdocs/index.html,v
  retrieving revision 1.5.2.1
  retrieving revision 1.5.2.2
  diff -C3 -r1.5.2.1 -r1.5.2.2
  *** index.html1997/06/27 03:01:56 1.5.2.1
  --- index.html1997/06/30 21:09:58 1.5.2.2
  ***
  *** 1,7 


 
  !   Test Page for Apache
 

 

 
  !   Test Page for Apache Installation
 

 
  It Worked!
  
  !   If you can see this, then your 
  !   http://www.apache.org/";>Apache installation was 
  !   successful.  You may now add content to this directory and 
  !   replace this page.
  
  
  !   The Apache documentation has been
  !   included with this distribution.
  
  
  You are free to use the image below on an Apache-powered web
  --- 13,40 
 >
  It Worked!
  
  !   If you can see this, it means that the installation of the
  !   http://www.apache.org/";
  !   >Apache
  !   software on this system was successful.  You may now add content to
  !   this directory and replace this page.
  
  +   
  +   
  +If you are seeing this instead of the content you expected, please
  +contact the administrator of the site involved.  If
  +you send mail about this to the authors of the Apache software, who 
almost
  +certainly have nothing to do with this site, your message will be
  +ignored.
  +   
  +   
  
  !   The Apache
  !   documentation
  !   has been included with this distribution.
  
  
  You are free to use the image below on an Apache-powered web
  
  
  


cvs commit: apache/src CHANGES http_main.c http_main.h httpd.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 14:10:05

  Modified:src   CHANGES http_main.c http_main.h httpd.h
  Log:
  Unix scoreboard management revamp/cleanup.  Including a tweaked
  put_scoreboard_info from Harrie Hazewinkel's SNMP patch.  Fix starvation
  problem with multiple Listens and a busy socket.  Early versions of this
  patch were reviewed by Marc, Ben, Randy and Jim.
  
  Revision  ChangesPath
  1.313 +11 -1 apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.312
  retrieving revision 1.313
  diff -C3 -r1.312 -r1.313
  *** CHANGES   1997/06/30 20:30:51 1.312
  --- CHANGES   1997/06/30 21:09:56 1.313
  ***
  *** 1,5 
Changes with Apache 1.3
  !   
  *) API: It's possible to replace standalone_main (define STANDALONE_MAIN)
 and it's possible to use SFIO for the underlying i/o layer.
 [Doug MacEachern]
  --- 1,15 
Changes with Apache 1.3
  ! 
  !   *) Revamp of (unix) scoreboard management code such that it avoids
  !  unnecessary traversals of the scoreboard on each hit.  This is
  !  particularly important for high volume sites with a large
  !  HARD_SERVER_LIMIT.  Some of the previous operations were O(n^2),
  !  and are now O(n).  See also SCOREBOARD_MAINTENANCE_INTERVAL in
  !  httpd.h. [Dean Gaudet]
  ! 
  !   *) In configurations using multiple Listen statements it was possible for
  !  busy sockets to starve other sockets of service.  [Dean Gaudet]
  ! 
  *) API: It's possible to replace standalone_main (define STANDALONE_MAIN)
 and it's possible to use SFIO for the underlying i/o layer.
 [Doug MacEachern]
  
  
  
  1.172 +248 -197  apache/src/http_main.c
  
  Index: http_main.c
  ===
  RCS file: /export/home/cvs/apache/src/http_main.c,v
  retrieving revision 1.171
  retrieving revision 1.172
  diff -C3 -r1.171 -r1.172
  *** http_main.c   1997/06/30 20:28:51 1.171
  --- http_main.c   1997/06/30 21:09:58 1.172
  ***
  *** 156,162 
char *lock_fname;
char *server_argv0;
struct in_addr bind_address;
  - listen_rec *listeners;
int daemons_to_start;
int daemons_min_free;
int daemons_max_free;
  --- 156,161 
  ***
  *** 165,170 
  --- 164,196 
int suexec_enabled = 0;
int listenbacklog;

  + /*
  +  * The max child slot ever assigned, preserved across restarts.  Necessary
  +  * to deal with MaxClients changes across SIGUSR1 restarts.  We use this
  +  * value to optimize routines that have to scan the entire scoreboard.
  +  */
  + static int max_daemons_limit = -1;
  + 
  + /*
  +  * During config time, listeners is treated as a NULL-terminated list.
  +  * child_main previously would start at the beginning of the list each time
  +  * through the loop, so a socket early on in the list could easily starve 
out
  +  * sockets later on in the list.  The solution is to start at the listener
  +  * after the last one processed.  But to do that fast/easily in child_main 
it's
  +  * way more convenient for listeners to be a ring that loops back on itself.
  +  * The routine setup_listeners() is called after config time to both open up
  +  * the sockets and to turn the NULL-terminated list into a ring that loops 
back
  +  * on itself.
  +  *
  +  * head_listener is used by each child to keep track of what they consider
  +  * to be the "start" of the ring.  It is also set by make_child to ensure
  +  * that new children also don't starve any sockets.
  +  *
  +  * Note that listeners != NULL is ensured by read_config().
  +  */
  + listen_rec *listeners;
  + static listen_rec *head_listener;
  + 
char server_root[MAX_STRING_LEN];
char server_confname[MAX_STRING_LEN];

  ***
  *** 919,932 
/* XXX: things are seriously screwed if we ever have to do a partial
 * read or write ... we could get a corrupted scoreboard
 */
  ! static int force_write (int fd, char *buffer, int bufsz)
{
int rv, orig_sz = bufsz;

do {
rv = write (fd, buffer, bufsz);
if (rv > 0) {
  ! buffer += rv;
bufsz -= rv;
}
} while ((rv > 0 && bufsz > 0) || (rv == -1 && errno == EINTR));
  --- 945,958 
/* XXX: things are seriously screwed if we ever have to do a partial
 * read or write ... we could get a corrupted scoreboard
 */
  ! static int force_write (int fd, void *buffer, int bufsz)
{
int rv, orig_sz = bufsz;

do {
rv = write (fd, buffer, bufsz);
if (rv > 0) {
  ! buffer = (char *)buffer + rv;
bufsz -= rv;
}
} while ((rv > 0 && bufsz > 0) || (rv == -1 && errno == EINTR));
  ***
  *** 934,947 
return rv < 0? rv 

cvs commit: apache/src buff.c

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 14:16:18

  Modified:src   buff.c
  Log:
  Oops I made a tiny goofup when merging the sfio changes.
  
  Revision  ChangesPath
  1.35  +1 -1  apache/src/buff.c
  
  Index: buff.c
  ===
  RCS file: /export/home/cvs/apache/src/buff.c,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -C3 -r1.34 -r1.35
  *** buff.c1997/06/30 21:03:16 1.34
  --- buff.c1997/06/30 21:16:17 1.35
  ***
  *** 221,227 
else
rv = write( fb->fd, buf, nbyte );
#elif defined (B_SFIO)
  ! i = sfwrite(fb->sf_out, buf, nbyte);
#else
rv = write(fb->fd, buf, nbyte);
#endif /* WIN32 */
  --- 221,227 
else
rv = write( fb->fd, buf, nbyte );
#elif defined (B_SFIO)
  ! rv = sfwrite(fb->sf_out, buf, nbyte);
#else
rv = write(fb->fd, buf, nbyte);
#endif /* WIN32 */
  
  
  


cvs commit: apache/src CHANGES http_config.c

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 14:18:13

  Modified:src   CHANGES http_config.c
  Log:
  run_method optimized to avoid needless scanning over NULLs in the module list
  
  Revision  ChangesPath
  1.314 +4 -1  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.313
  retrieving revision 1.314
  diff -C3 -r1.313 -r1.314
  *** CHANGES   1997/06/30 21:09:56 1.313
  --- CHANGES   1997/06/30 21:18:10 1.314
  ***
  *** 1,5 
Changes with Apache 1.3
  ! 
  *) Revamp of (unix) scoreboard management code such that it avoids
 unnecessary traversals of the scoreboard on each hit.  This is
 particularly important for high volume sites with a large
  --- 1,8 
Changes with Apache 1.3
  !   
  !   *) run_method optimized to avoid needless scanning over NULLs in the
  !  module list.  [Dean Gaudet]
  !   
  *) Revamp of (unix) scoreboard management code such that it avoids
 unnecessary traversals of the scoreboard on each hit.  This is
 particularly important for high volume sites with a large
  
  
  
  1.55  +99 -16apache/src/http_config.c
  
  Index: http_config.c
  ===
  RCS file: /export/home/cvs/apache/src/http_config.c,v
  retrieving revision 1.54
  retrieving revision 1.55
  diff -C3 -r1.54 -r1.55
  *** http_config.c 1997/06/29 19:05:20 1.54
  --- http_config.c 1997/06/30 21:18:11 1.55
  ***
  *** 144,150 
void *
merge_per_dir_configs (pool *p, void *base, void *new)
{
  !void **conf_vector = (void **)pcalloc(p, sizeof(void*) * total_modules);
   void **base_vector = (void **) base;
   void **new_vector = (void **) new;
   module *modp;
  --- 144,150 
void *
merge_per_dir_configs (pool *p, void *base, void *new)
{
  !void **conf_vector = (void **)palloc(p, sizeof(void*) * total_modules);
   void **base_vector = (void **) base;
   void **new_vector = (void **) new;
   module *modp;
  ***
  *** 250,269 
 * do the dirty work of slogging through the module structures.
 */

  ! int
run_method (request_rec *r, int offset, int run_all)
{
  !module *modp;
  !for (modp = top_module; modp; modp = modp->next) {
  !handler mod_handler = *(handler *)(offset + (char *)(modp));

  !if (mod_handler) {
   int result;

  -Explain1("Run %s",ShowMethod(modp,offset));
   result = (*mod_handler)(r);

  -Explain2("%s returned %d",ShowMethod(modp,offset),result);
   if (result != DECLINED && (!run_all || result != OK))
   return result;
   }
  --- 250,350 
 * do the dirty work of slogging through the module structures.
 */

  ! /*
  !  * Optimized run_method routines.  The observation here is that many modules
  !  * have NULL for most of the methods.  So we build optimized lists of
  !  * everything.  If you think about it, this is really just like a sparse 
array
  !  * implementation to avoid scanning the zero entries.
  !  */
  ! static const int method_offsets[] = {
  ! XtOffsetOf (module, translate_handler),
  ! XtOffsetOf (module, check_user_id),
  ! XtOffsetOf (module, auth_checker),
  ! XtOffsetOf (module, access_checker),
  ! XtOffsetOf (module, type_checker),
  ! XtOffsetOf (module, fixer_upper),
  ! XtOffsetOf (module, logger),
  ! XtOffsetOf (module, header_parser)
  ! };
  ! #define NMETHODS(sizeof (method_offsets)/sizeof (method_offsets[0]))
  ! 
  ! static struct {
  ! int translate_handler;
  ! int check_user_id;
  ! int auth_checker;
  ! int access_checker;
  ! int type_checker;
  ! int fixer_upper;
  ! int logger;
  ! int header_parser;
  ! } offsets_into_method_ptrs;
  ! 
  ! /*
  !  * This is just one big array of method_ptrs.  It's constructed such that,
  !  * for example, method_ptrs[ offsets_into_method_ptrs.logger ] is the first
  !  * logger function.  You go one-by-one from there until you hit a NULL.
  !  * This structure was designed to hopefully maximize cache-coolness.
  !  */
  ! static handler *method_ptrs;
  ! 
  ! /* routine to reconstruct all these shortcuts... called after every
  !  * add_module.
  !  * XXX: this breaks if modules dink with their methods pointers
  !  */
  ! static void
  ! build_method_shortcuts (void)
  ! {
  ! module *modp;
  ! int how_many_ptrs;
  ! int i;
  ! int next_ptr;
  ! handler fp;
  ! 
  ! if (method_ptrs) {
  ! /* free up any previous set of method_ptrs */
  ! free (method_ptrs);
  ! }
  ! 
  ! /* first we count how many functions we have */
  ! how_many_ptrs = 0;
  ! for (modp = top_module; modp; modp = modp->next) {
  ! 

cvs commit: apache/src CHANGES Configuration.tmpl Configure INSTALL Makefile.tmpl PORTING

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 14:42:34

  Modified:htdocs/manual  install.html
   htdocs/manual/misc  FAQ.html known_bugs.html
   htdocs/manual/mod  mod_proxy.html
   src   CHANGES Configuration.tmpl Configure INSTALL
Makefile.tmpl  PORTING
  Log:
  PR#372: EXTRA_LFLAGS was changed to EXTRA_LDFLAGS (and LFLAGS was changed
  to LDFLAGS) to avoid complications with lex rules in make files.
  
  Revision  ChangesPath
  1.10  +1 -1  apache/htdocs/manual/install.html
  
  Index: install.html
  ===
  RCS file: /export/home/cvs/apache/htdocs/manual/install.html,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -C3 -r1.9 -r1.10
  *** install.html  1997/06/04 11:07:49 1.9
  --- install.html  1997/06/30 21:42:25 1.10
  ***
  *** 72,78 
  an additional library required by an optional module) you might need
  to edit one or more of the following options in the
  Configuration file:
  ! EXTRA_CFLAGS, LIBS, LFLAGS, INCLUDES.
  

  Run the Configure script:
  --- 72,78 
  an additional library required by an optional module) you might need
  to edit one or more of the following options in the
  Configuration file:
  ! EXTRA_CFLAGS, LIBS, LDFLAGS, INCLUDES.
  

  Run the Configure script:
  
  
  
  1.77  +4 -4  apache/htdocs/manual/misc/FAQ.html
  
  Index: FAQ.html
  ===
  RCS file: /export/home/cvs/apache/htdocs/manual/misc/FAQ.html,v
  retrieving revision 1.76
  retrieving revision 1.77
  diff -C3 -r1.76 -r1.77
  *** FAQ.html  1997/06/28 21:05:31 1.76
  --- FAQ.html  1997/06/30 21:42:26 1.77
  ***
  *** 15,21 
  
  Apache Server Frequently Asked Questions
  
  !   $Revision: 1.76 $ ($Date: 1997/06/28 21:05:31 $)
  
  
  The latest version of this FAQ is always available from the main
  --- 15,21 
  
  Apache Server Frequently Asked Questions
  
  !   $Revision: 1.77 $ ($Date: 1997/06/30 21:42:26 $)
  
  
  The latest version of this FAQ is always available from the main
  ***
  *** 1481,1489 
  To resolve this, you can either make sure you use the include files
  and libraries that came with your system or make sure to use the
  new include files and libraries.  Adding -lbind to the
  !   EXTRA_LFLAGS line in your Configuration 
  file, then re-running Configure, should resolve the
  !   problem.
  
  Note: As of BIND 8.1.1, the bind libraries and files are
  installed under /usr/local/bind by default.  So you
  --- 1481,1489 
  To resolve this, you can either make sure you use the include files
  and libraries that came with your system or make sure to use the
  new include files and libraries.  Adding -lbind to the
  !   EXTRA_LDFLAGS line in your Configuration 
  file, then re-running Configure, should resolve the
  !   problem.  (Pre 1.3 Apache uses EXTRA_LFLAGS instead.)
  
  Note: As of BIND 8.1.1, the bind libraries and files are
  installed under /usr/local/bind by default.  So you
  ***
  *** 1491,1497 
  resolvers you'll have to add the following to the respective lines:
  
  EXTRA_CFLAGS=-I/usr/local/bind/include
  !   EXTRA_LFLAGS=-L/usr/local/bind/lib
  EXTRA_LIBS=-lbind
  
  
  --- 1491,1497 
  resolvers you'll have to add the following to the respective lines:
  
  EXTRA_CFLAGS=-I/usr/local/bind/include
  !   EXTRA_LDFLAGS=-L/usr/local/bind/lib
  EXTRA_LIBS=-lbind
  
  
  
  
  
  1.21  +1 -1  apache/htdocs/manual/misc/known_bugs.html
  
  Index: known_bugs.html
  ===
  RCS file: /export/home/cvs/apache/htdocs/manual/misc/known_bugs.html,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -C3 -r1.20 -r1.21
  *** known_bugs.html   1997/06/28 21:05:32 1.20
  --- known_bugs.html   1997/06/30 21:42:27 1.21
  ***
  *** 81,87 
If compilation fails complaining about "unknown symbol 
__inet_ntoa()"
then you have probably installed version 8 of bind. You will need to
explicitly link with the bind library by adding -lbind 
  ! to EXTRA_LFLAGS in Configuration. See
http://www.apache.org/bugdb.cgi/full/616";>PR#616
and the 
Apache FAQ.
  --- 81,87 
If compilation fails complaining about "unknown symbol 
__inet_ntoa()"
then you have probably installed version 8 of bind. You will need to
explicitly link with the bind library by adding -lbind 
  ! to EXTRA_LDFLAGS in Configuration. See
http://www.apache.org/bugdb.cgi/full/616";>PR#616
and the 
Apache FAQ.
  
  
  
  1.24  +1 -1 

cvs commit: apache/src Makefile.tmpl

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 15:26:55

  Modified:src   Makefile.tmpl
  Log:
  Add a "depend" rule that uses gcc -MM to rebuild dependencies.  Also rebuilt
  the quite ancient dependency list.
  
  Revision  ChangesPath
  1.50  +106 -69   apache/src/Makefile.tmpl
  
  Index: Makefile.tmpl
  ===
  RCS file: /export/home/cvs/apache/src/Makefile.tmpl,v
  retrieving revision 1.49
  retrieving revision 1.50
  diff -C3 -r1.49 -r1.50
  *** Makefile.tmpl 1997/06/30 21:42:31 1.49
  --- Makefile.tmpl 1997/06/30 22:26:54 1.50
  ***
  *** 51,126 
http_bprintf.o: http_bprintf.c
$(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c

#Dependencies

$(OBJS): Makefile

  ! alloc.o: conf.h alloc.h
  ! buff.o: conf.h alloc.h buff.h
  ! explain.o: explain.h
  ! http_bprintf.o: conf.h alloc.h buff.h
  ! http_config.o: httpd.h http_config.h http_core.h http_log.h http_request.h \
  !http_conf_globals.h explain.h
  ! http_core.o: httpd.h http_config.h http_core.h http_protocol.h scoreboard.h 
\
  !  http_conf_globals.h http_main.h http_log.h rfc1413.h util_md5.h
  ! http_log.o: httpd.h http_config.h http_core.h http_log.h
  ! http_main.o: httpd.h http_config.h http_core.h http_log.h http_request.h \
  !  http_conf_globals.h http_protocol.h http_main.h scoreboard.h \
  !  explain.h
  ! http_protocol.o: httpd.h http_config.h http_core.h http_protocol.h \
  !  http_main.h http_log.h util_date.h
  ! http_request.o: httpd.h http_config.h http_request.h http_core.h \
  ! http_protocol.h http_log.h http_main.h scoreboard.h
  ! md5c.o: md5.h
  ! mod_access.o: httpd.h http_core.h http_config.h http_log.h
  ! mod_actions.o: httpd.h http_config.h http_request.h http_core.h \
  !http_protocol.h http_main.h http_log.h util_script.h
  ! mod_alias.o: httpd.h http_config.h
  ! mod_asis.o: httpd.h http_config.h http_protocol.h http_log.h util_script.h \
  ! http_main.h http_request.h
  ! mod_auth.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_anon.o: httpd.h http_config.h http_core.h http_log.h 
http_protocol.h
  ! mod_auth_db.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_dbm.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_msql.o: httpd.h http_config.h http_core.h http_log.h 
http_protocol.h
  ! mod_browser.o: httpd.h http_config.h
  ! mod_cern_meta.o: httpd.h http_config.h util_script.h http_log.h
  ! mod_cgi.o: httpd.h http_config.h http_request.h http_core.h http_protocol.h 
\
  !http_main.h http_log.h util_script.h
  ! mod_digest.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h \
  !   util_md5.h
  ! mod_dir.o: httpd.h http_config.h http_core.h http_request.h http_protocol.h 
\
  !http_log.h http_main.h util_script.h
  ! mod_dld.o: httpd.h http_config.h http_conf_globals.h
  ! mod_env.o: httpd.h http_config.h
  ! mod_expires.o: httpd.h http_config.h http_log.h
  ! mod_headers.o: httpd.h http_config.h
  ! mod_imap.o: httpd.h http_config.h http_request.h http_core.h 
http_protocol.h \
  ! http_main.h http_log.h util_script.h
  ! mod_include.o: httpd.h http_config.h http_request.h http_core.h http_log.h \
  !http_protocol.h http_main.h util_script.h
  ! mod_info.o: httpd.h http_config.h http_core.h http_log.h http_main.h \
  ! http_protocol.h util_script.h
  ! mod_log_agent.o: httpd.h http_config.h
  ! mod_log_config.o: httpd.h http_config.h http_core.h
  ! mod_log_referer.o: httpd.h http_config.h
  ! mod_mime.o: httpd.h http_config.h
  ! mod_negotiation.o: httpd.h http_config.h http_request.h http_core.h 
http_log.h
  ! mod_rewrite.o: httpd.h http_config.h http_request.h http_core.h http_log.h \
  !mod_rewrite.h
  ! mod_status.o: httpd.h http_config.h http_core.h http_protocol.h http_main.h 
\
  !   util_script.h scoreboard.h
  ! mod_userdir.o: httpd.h http_config.h
  ! mod_usertrack.o: httpd.h http_config.h http_core.h
  ! modules.o: httpd.h http_config.h
  ! rfc1413.o: httpd.h http_log.h rfc1413.h
  ! util.o: httpd.h http_conf_globals.h
  ! util_date.o: util_date.h
  ! util_md5.o: httpd.h util_md5.h
  ! util_script.o: httpd.h http_config.h http_conf_globals.h http_main.h \
  !http_log.h http_protocol.h http_core.h http_request.h \
  !util_script.h
  ! util_snprintf.o: httpd.h
  ! 
  ! httpd.h: conf.h alloc.h buff.h
  ! util_md5.h: md5.h
  --- 51,163 
http_bprintf.o: http_bprintf.c
$(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c

  + # We really don't expect end users to use this rule.  It works only with
  + # gcc, and rebuilds Makefile.tmpl.  You have to re-run Configure after
  + # using it.
  + depend:

cvs commit: apache/src CHANGES http_core.c http_request.c httpd.h mod_negotiation.c util.c

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 15:50:45

  Modified:src   CHANGES http_core.c http_request.c httpd.h
mod_negotiation.c  util.c
  Log:
  directory_walk() is an expensive function, keep a little more state to
  avoid needless string counting.  Add two new functions make_dirstr_parent
  and make_dirstr_prefix which replace all existing uses of make_dirstr.
  The new functions are a little less general than make_dirstr, but
  work more efficiently (less memory, less string counting).
  
  Revision  ChangesPath
  1.316 +7 -0  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.315
  retrieving revision 1.316
  diff -C3 -r1.315 -r1.316
  *** CHANGES   1997/06/30 21:42:29 1.315
  --- CHANGES   1997/06/30 22:50:38 1.316
  ***
  *** 1,4 
  --- 1,11 
Changes with Apache 1.3
  +   
  +   *) directory_walk() is an expensive function, keep a little more state to
  +  avoid needless string counting.  Add two new functions 
make_dirstr_parent
  +  and make_dirstr_prefix which replace all existing uses of make_dirstr.
  +  The new functions are a little less general than make_dirstr, but
  +  work more efficiently (less memory, less string counting).
  +  [Dean Gaudet]

  *) EXTRA_LFLAGS was changed to EXTRA_LDFLAGS (and LFLAGS was changed
 to LDFLAGS) to avoid complications with lex rules in make files.
  
  
  
  1.90  +1 -1  apache/src/http_core.c
  
  Index: http_core.c
  ===
  RCS file: /export/home/cvs/apache/src/http_core.c,v
  retrieving revision 1.89
  retrieving revision 1.90
  diff -C3 -r1.89 -r1.90
  *** http_core.c   1997/06/29 17:53:03 1.89
  --- http_core.c   1997/06/30 22:50:39 1.90
  ***
  *** 117,123 
core_dir_config *base = (core_dir_config *)basev;
core_dir_config *new = (core_dir_config *)newv;
core_dir_config *conf =
  !   (core_dir_config *)pcalloc (a, sizeof(core_dir_config));
int i;
  
memcpy ((char *)conf, (const char *)base, sizeof(core_dir_config));
  --- 117,123 
core_dir_config *base = (core_dir_config *)basev;
core_dir_config *new = (core_dir_config *)newv;
core_dir_config *conf =
  !   (core_dir_config *)palloc (a, sizeof(core_dir_config));
int i;
  
memcpy ((char *)conf, (const char *)base, sizeof(core_dir_config));
  
  
  
  1.54  +33 -18apache/src/http_request.c
  
  Index: http_request.c
  ===
  RCS file: /export/home/cvs/apache/src/http_request.c,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -C3 -r1.53 -r1.54
  *** http_request.c1997/06/28 21:46:57 1.53
  --- http_request.c1997/06/30 22:50:39 1.54
  ***
  *** 251,259 
core_dir_config **sec = (core_dir_config **)sec_array->elts;
int num_sec = sec_array->nelts;
char *test_filename = pstrdup (r->pool, r->filename);

int num_dirs, res;
  ! int i;

/* Are we dealing with a file? If not, we can (hopefuly) safely assume
 * we have a handler that doesn't require one, but for safety's sake,
  --- 251,260 
core_dir_config **sec = (core_dir_config **)sec_array->elts;
int num_sec = sec_array->nelts;
char *test_filename = pstrdup (r->pool, r->filename);
  + char *test_dirname, *test_htaccess;

int num_dirs, res;
  ! int i, test_filename_len;

/* Are we dealing with a file? If not, we can (hopefuly) safely assume
 * we have a handler that doesn't require one, but for safety's sake,
  ***
  *** 333,360 
return res;
}

  ! if (test_filename[strlen(test_filename)-1] == '/')
--num_dirs;

  ! if (S_ISDIR (r->finfo.st_mode)) {
  ! ++num_dirs;
  ! }

for (i = 1; i <= num_dirs; ++i) {
core_dir_config *core_dir =
  (core_dir_config *)get_module_config(per_dir_defaults, &core_module);
int overrides_here;
void *this_conf = NULL, *htaccess_conf = NULL;
  ! char *this_dir = make_dirstr (r->pool, test_filename, i);
int j;
  !   
/* Do symlink checks first, because they are done with the
 * permissions appropriate to the *parent* directory...
 */

  ! if ((res = check_symlinks (this_dir, core_dir->opts)))
{
  ! log_reason("Symbolic link not allowed", this_dir, r);
return res;
}

  --- 334,367 
return res;
}

  ! test_filename_len = strlen (test_filename);
  ! if (test_filename[test_filename_len-1] == '/')
--num_dirs;

  ! if (S_ISDIR (

cvs commit: apache/src CHANGES http_protocol.c http_request.c httpd.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 18:13:45

  Modified:src   CHANGES http_protocol.c http_request.c httpd.h
  Log:
  Added begun_read_body to request_rec so that subreqs and internal redirects
  won't try to read the request body twice.
  
  Submitted by: Roy Fielding
  Reviewed by:  Alexei Kosut, Dean Gaudet
  
  Revision  ChangesPath
  1.317 +5 -1  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.316
  retrieving revision 1.317
  diff -C3 -r1.316 -r1.317
  *** CHANGES   1997/06/30 22:50:38 1.316
  --- CHANGES   1997/07/01 01:13:40 1.317
  ***
  *** 92,98 
 lockfile in any location.  It previously defaulted to /usr/tmp/htlock.
 [Somehow it took four of us: Randy Terbush, Jim Jagielski, Dean Gaudet,
 Marc Slemko]
  !   
  *) Add a placeholder in modules/Makefile to avoid errors with certain
 makes. [Marc Slemko]

  --- 92,102 
 lockfile in any location.  It previously defaulted to /usr/tmp/htlock.
 [Somehow it took four of us: Randy Terbush, Jim Jagielski, Dean Gaudet,
 Marc Slemko]
  ! 
  !   *) Request processing now retains state of whether or not the request
  !  body has been read, so that internal redirects and subrequests will
  !  not try to read it twice (and block). [Roy Fielding]
  ! 
  *) Add a placeholder in modules/Makefile to avoid errors with certain
 makes. [Marc Slemko]

  
  
  
  1.130 +4 -1  apache/src/http_protocol.c
  
  Index: http_protocol.c
  ===
  RCS file: /export/home/cvs/apache/src/http_protocol.c,v
  retrieving revision 1.129
  retrieving revision 1.130
  diff -C3 -r1.129 -r1.130
  *** http_protocol.c   1997/06/29 17:56:47 1.129
  --- http_protocol.c   1997/07/01 01:13:41 1.130
  ***
  *** 871,876 
  --- 871,877 

rnew->read_length = r->read_length;
rnew->read_body   = REQUEST_NO_BODY;
  + rnew->begun_read_body = r->begun_read_body;

rnew->main = (request_rec *)r;
}
  ***
  *** 1348,1354 

int should_client_block (request_rec *r)
{
  ! if (is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  --- 1349,1355 

int should_client_block (request_rec *r)
{
  ! if (r->begun_read_body || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  ***
  *** 1399,1404 
  --- 1400,1407 
int c;
long len_read, len_to_read;
long chunk_start = 0;
  + 
  + r->begun_read_body = 1;

if (!r->read_chunked) { /* Content-length read */
len_to_read = (r->remaining > bufsiz) ? bufsiz : r->remaining;
  
  
  
  1.55  +2 -0  apache/src/http_request.c
  
  Index: http_request.c
  ===
  RCS file: /export/home/cvs/apache/src/http_request.c,v
  retrieving revision 1.54
  retrieving revision 1.55
  diff -C3 -r1.54 -r1.55
  *** http_request.c1997/06/30 22:50:39 1.54
  --- http_request.c1997/07/01 01:13:42 1.55
  ***
  *** 1112,1117 
  --- 1112,1119 
  */
new->no_local_copy = r->no_local_copy;

  + new->begun_read_body = r->begun_read_body;  /* We can only read it once 
*/
  + 
ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));

  
  
  
  1.122 +1 -0  apache/src/httpd.h
  
  Index: httpd.h
  ===
  RCS file: /export/home/cvs/apache/src/httpd.h,v
  retrieving revision 1.121
  retrieving revision 1.122
  diff -C3 -r1.121 -r1.122
  *** httpd.h   1997/06/30 22:50:40 1.121
  --- httpd.h   1997/07/01 01:13:42 1.122
  ***
  *** 502,507 
  --- 502,508 
  long read_length; /* bytes that have been read */
  int read_body;/* how the request body should be read */
  int read_chunked; /* reading chunked transfer-coding */
  +   int begun_read_body;  /* false (0) until first get_client_block */

  /* MIME header environments, in and out.  Also, an array containing
   * environment variables to be passed to subprocesses, so people can
  
  
  


cvs commit: apache/src/helpers GuessOS

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 18:15:30

  Modified:src   CHANGES Configure conf.h
   src/helpers  GuessOS
  Log:
  PR#333: Fix rlim_t problems with AIX 4.2.
  
  Submitted by: Marc Slemko
  Reviewed by:  Dean Gaudet
  
  Revision  ChangesPath
  1.318 +2 -0  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.317
  retrieving revision 1.318
  diff -C3 -r1.317 -r1.318
  *** CHANGES   1997/07/01 01:13:40 1.317
  --- CHANGES   1997/07/01 01:15:26 1.318
  ***
  *** 145,150 
  --- 145,152 

  *) pregsub had an off-by-1 in its error checking code. [Alexei Kosut]

  +   *) PORT: fix rlim_t problems with AIX 4.2. [Marc Slemko] PR#333
  + 
  *) PORT: Update Unixware support for 2.1.2.
 [Lawrence Rosenman ] PR#511

  
  
  
  1.104 +7 -3  apache/src/Configure
  
  Index: Configure
  ===
  RCS file: /export/home/cvs/apache/src/Configure,v
  retrieving revision 1.103
  retrieving revision 1.104
  diff -C3 -r1.103 -r1.104
  *** Configure 1997/06/30 21:42:30 1.103
  --- Configure 1997/07/01 01:15:27 1.104
  ***
  *** 205,214 
CFLAGS="$CFLAGS -DAIX -U__STR__ -DUSEBCOPY"
DEF_WANTHSREGEX=no
;;
*-ibm-aix*)
  ! OS='IBM AIX'
  ! CFLAGS="$CFLAGS -DAIX -U__STR__"
  ! ;;
*-apollo-*)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
  --- 205,218 
CFLAGS="$CFLAGS -DAIX -U__STR__ -DUSEBCOPY"
DEF_WANTHSREGEX=no
;;
  + *-ibm-aix[1-3].*|*-ibm-aix4.[0-1])
  + OS='IBM AIX < v4.2'
  + CFLAGS="$CFLAGS -DAIX -DNEED_RLIM_T -U__STR__"
  + ;;
*-ibm-aix*)
  ! OS='IBM AIX >= 4.2'
  ! CFLAGS="$CFLAGS -DAIX -U__STR__"
  ! ;;
*-apollo-*)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
  
  
  
  1.109 +2 -0  apache/src/conf.h
  
  Index: conf.h
  ===
  RCS file: /export/home/cvs/apache/src/conf.h,v
  retrieving revision 1.108
  retrieving revision 1.109
  diff -C3 -r1.108 -r1.109
  *** conf.h1997/06/30 21:03:17 1.108
  --- conf.h1997/07/01 01:15:27 1.109
  ***
  *** 155,161 
  --- 155,163 
#define DEFAULT_GROUP "nobody"
#endif
#define DEFAULT_USER "nobody"
  + #ifdef NEED_RLIM_T
typedef int rlim_t;
  + #endif

#elif defined(ULTRIX)
#define HAVE_GMTOFF
  
  
  
  1.24  +1 -1  apache/src/helpers/GuessOS
  
  Index: GuessOS
  ===
  RCS file: /export/home/cvs/apache/src/helpers/GuessOS,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -C3 -r1.23 -r1.24
  *** GuessOS   1997/06/24 01:10:58 1.23
  --- GuessOS   1997/07/01 01:15:30 1.24
  ***
  *** 61,67 
;;

AIX:*)
  ! echo "${MACHINE}-ibm-aix"; exit 0
;;

dgux:*)
  --- 61,67 
;;

AIX:*)
  ! echo "${MACHINE}-ibm-aix${VERSION}.${RELEASE}"; exit 0
;;

dgux:*)
  
  
  


cvs commit: apache/src Makefile.tmpl

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 18:33:32

  Modified:src   Tag: APACHE_1_2_X  Makefile.tmpl
  Log:
  Update dependencies.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.46.2.2  +105 -69   apache/src/Makefile.tmpl
  
  Index: Makefile.tmpl
  ===
  RCS file: /export/home/cvs/apache/src/Makefile.tmpl,v
  retrieving revision 1.46.2.1
  retrieving revision 1.46.2.2
  diff -C3 -r1.46.2.1 -r1.46.2.2
  *** Makefile.tmpl 1997/06/27 02:09:15 1.46.2.1
  --- Makefile.tmpl 1997/07/01 01:33:31 1.46.2.2
  ***
  *** 51,126 
http_bprintf.o: http_bprintf.c
$(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c

#Dependencies

$(OBJS): Makefile

  ! alloc.o: conf.h alloc.h
  ! buff.o: conf.h alloc.h buff.h
  ! explain.o: explain.h
  ! http_bprintf.o: conf.h alloc.h buff.h
  ! http_config.o: httpd.h http_config.h http_core.h http_log.h http_request.h \
  !http_conf_globals.h explain.h
  ! http_core.o: httpd.h http_config.h http_core.h http_protocol.h scoreboard.h 
\
  !  http_conf_globals.h http_main.h http_log.h rfc1413.h util_md5.h
  ! http_log.o: httpd.h http_config.h http_core.h http_log.h
  ! http_main.o: httpd.h http_config.h http_core.h http_log.h http_request.h \
  !  http_conf_globals.h http_protocol.h http_main.h scoreboard.h \
  !  explain.h
  ! http_protocol.o: httpd.h http_config.h http_core.h http_protocol.h \
  !  http_main.h http_log.h util_date.h
  ! http_request.o: httpd.h http_config.h http_request.h http_core.h \
  ! http_protocol.h http_log.h http_main.h scoreboard.h
  ! md5c.o: md5.h
  ! mod_access.o: httpd.h http_core.h http_config.h http_log.h
  ! mod_actions.o: httpd.h http_config.h http_request.h http_core.h \
  !http_protocol.h http_main.h http_log.h util_script.h
  ! mod_alias.o: httpd.h http_config.h
  ! mod_asis.o: httpd.h http_config.h http_protocol.h http_log.h util_script.h \
  ! http_main.h http_request.h
  ! mod_auth.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_anon.o: httpd.h http_config.h http_core.h http_log.h 
http_protocol.h
  ! mod_auth_db.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_dbm.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h
  ! mod_auth_msql.o: httpd.h http_config.h http_core.h http_log.h 
http_protocol.h
  ! mod_browser.o: httpd.h http_config.h
  ! mod_cern_meta.o: httpd.h http_config.h util_script.h http_log.h
  ! mod_cgi.o: httpd.h http_config.h http_request.h http_core.h http_protocol.h 
\
  !http_main.h http_log.h util_script.h
  ! mod_digest.o: httpd.h http_config.h http_core.h http_log.h http_protocol.h \
  !   util_md5.h
  ! mod_dir.o: httpd.h http_config.h http_core.h http_request.h http_protocol.h 
\
  !http_log.h http_main.h util_script.h
  ! mod_dld.o: httpd.h http_config.h http_conf_globals.h
  ! mod_env.o: httpd.h http_config.h
  ! mod_expires.o: httpd.h http_config.h http_log.h
  ! mod_headers.o: httpd.h http_config.h
  ! mod_imap.o: httpd.h http_config.h http_request.h http_core.h 
http_protocol.h \
  ! http_main.h http_log.h util_script.h
  ! mod_include.o: httpd.h http_config.h http_request.h http_core.h http_log.h \
  !http_protocol.h http_main.h util_script.h
  ! mod_info.o: httpd.h http_config.h http_core.h http_log.h http_main.h \
  ! http_protocol.h util_script.h
  ! mod_log_agent.o: httpd.h http_config.h
  ! mod_log_config.o: httpd.h http_config.h http_core.h
  ! mod_log_referer.o: httpd.h http_config.h
  ! mod_mime.o: httpd.h http_config.h
  ! mod_negotiation.o: httpd.h http_config.h http_request.h http_core.h 
http_log.h
  ! mod_rewrite.o: httpd.h http_config.h http_request.h http_core.h http_log.h \
  !mod_rewrite.h
  ! mod_status.o: httpd.h http_config.h http_core.h http_protocol.h http_main.h 
\
  !   util_script.h scoreboard.h
  ! mod_userdir.o: httpd.h http_config.h
  ! mod_usertrack.o: httpd.h http_config.h http_core.h
  ! modules.o: httpd.h http_config.h
  ! rfc1413.o: httpd.h http_log.h rfc1413.h
  ! util.o: httpd.h http_conf_globals.h
  ! util_date.o: util_date.h
  ! util_md5.o: httpd.h util_md5.h
  ! util_script.o: httpd.h http_config.h http_conf_globals.h http_main.h \
  !http_log.h http_protocol.h http_core.h http_request.h \
  !util_script.h
  ! util_snprintf.o: httpd.h
  ! 
  ! httpd.h: conf.h alloc.h buff.h
  ! util_md5.h: md5.h
  --- 51,162 
http_bprintf.o: http_bprintf.c
$(CC) -c $(INCLUDES) $(CFLAGS) $(BROKEN_BPRINTF_FLAGS) http_bprintf.c

  + # We really don't expect end users to use this rule.  It works only with
  + # gcc, and rebuilds Makefile.tmpl.  You have to re-run Configure after
 

cvs commit: apache/src CHANGES http_protocol.c http_request.c httpd.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 18:37:12

  Modified:src   Tag: APACHE_1_2_X  CHANGES http_protocol.c
http_request.c httpd.h
  Log:
  Added begun_read_body to request_rec so that subreqs and internal redirects
  won't try to read the request body twice.
  
  Submitted by: Roy Fielding
  Reviewed by:  Alexei Kosut, Dean Gaudet
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.286.2.23 +5 -1  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.286.2.22
  retrieving revision 1.286.2.23
  diff -C3 -r1.286.2.22 -r1.286.2.23
  *** CHANGES   1997/06/30 00:02:00 1.286.2.22
  --- CHANGES   1997/07/01 01:37:07 1.286.2.23
  ***
  *** 29,35 
 lockfile in any location.  It previously defaulted to /usr/tmp/htlock.
 [Somehow it took four of us: Randy Terbush, Jim Jagielski, Dean Gaudet,
 Marc Slemko]
  !   
  *) Add a placeholder in modules/Makefile to avoid errors with certain
 makes. [Marc Slemko]

  --- 29,39 
 lockfile in any location.  It previously defaulted to /usr/tmp/htlock.
 [Somehow it took four of us: Randy Terbush, Jim Jagielski, Dean Gaudet,
 Marc Slemko]
  ! 
  !   *) Request processing now retains state of whether or not the request
  !  body has been read, so that internal redirects and subrequests will
  !  not try to read it twice (and block). [Roy Fielding]
  ! 
  *) Add a placeholder in modules/Makefile to avoid errors with certain
 makes. [Marc Slemko]

  
  
  
  1.126.2.1 +4 -1  apache/src/http_protocol.c
  
  Index: http_protocol.c
  ===
  RCS file: /export/home/cvs/apache/src/http_protocol.c,v
  retrieving revision 1.126
  retrieving revision 1.126.2.1
  diff -C3 -r1.126 -r1.126.2.1
  *** http_protocol.c   1997/05/29 03:44:31 1.126
  --- http_protocol.c   1997/07/01 01:37:08 1.126.2.1
  ***
  *** 868,873 
  --- 868,874 

rnew->read_length = r->read_length;
rnew->read_body   = REQUEST_NO_BODY;
  + rnew->begun_read_body = r->begun_read_body;

rnew->main = (request_rec *)r;
}
  ***
  *** 1345,1351 

int should_client_block (request_rec *r)
{
  ! if (is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  --- 1346,1352 

int should_client_block (request_rec *r)
{
  ! if (r->begun_read_body || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  ***
  *** 1396,1401 
  --- 1397,1404 
int c;
long len_read, len_to_read;
long chunk_start = 0;
  + 
  + r->begun_read_body = 1;

if (!r->read_chunked) { /* Content-length read */
len_to_read = (r->remaining > bufsiz) ? bufsiz : r->remaining;
  
  
  
  1.50.2.2  +2 -0  apache/src/http_request.c
  
  Index: http_request.c
  ===
  RCS file: /export/home/cvs/apache/src/http_request.c,v
  retrieving revision 1.50.2.1
  retrieving revision 1.50.2.2
  diff -C3 -r1.50.2.1 -r1.50.2.2
  *** http_request.c1997/06/27 02:21:21 1.50.2.1
  --- http_request.c1997/07/01 01:37:09 1.50.2.2
  ***
  *** 1095,1100 
  --- 1095,1102 
  */
new->no_local_copy = r->no_local_copy;

  + new->begun_read_body = r->begun_read_body;  /* We can only read it once 
*/
  + 
ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));

  
  
  
  1.111.2.4 +1 -0  apache/src/httpd.h
  
  Index: httpd.h
  ===
  RCS file: /export/home/cvs/apache/src/httpd.h,v
  retrieving revision 1.111.2.3
  retrieving revision 1.111.2.4
  diff -C3 -r1.111.2.3 -r1.111.2.4
  *** httpd.h   1997/06/29 18:51:23 1.111.2.3
  --- httpd.h   1997/07/01 01:37:09 1.111.2.4
  ***
  *** 472,477 
  --- 472,478 
  long read_length; /* bytes that have been read */
  int read_body;/* how the request body should be read */
  int read_chunked; /* reading chunked transfer-coding */
  +   int begun_read_body;  /* false (0) until first get_client_block */

  /* MIME header environments, in and out.  Also, an array containing
   * environment variables to be passed to subprocesses, so people can
  
  
  


cvs commit: apache/src/helpers GuessOS

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 18:38:17

  Modified:src   Tag: APACHE_1_2_X  CHANGES Configure conf.h
   src/helpers  Tag: APACHE_1_2_X  GuessOS
  Log:
  PR#333: Fix rlim_t problems with AIX 4.2.
  
  Submitted by: Marc Slemko
  Reviewed by:  Dean Gaudet
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.286.2.24 +2 -0  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.286.2.23
  retrieving revision 1.286.2.24
  diff -C3 -r1.286.2.23 -r1.286.2.24
  *** CHANGES   1997/07/01 01:37:07 1.286.2.23
  --- CHANGES   1997/07/01 01:38:12 1.286.2.24
  ***
  *** 82,87 
  --- 82,89 

  *) pregsub had an off-by-1 in its error checking code. [Alexei Kosut]

  +   *) PORT: fix rlim_t problems with AIX 4.2. [Marc Slemko] PR#333
  + 
  *) PORT: Update Unixware support for 2.1.2.
 [Lawrence Rosenman ] PR#511

  
  
  
  1.96.2.7  +7 -3  apache/src/Configure
  
  Index: Configure
  ===
  RCS file: /export/home/cvs/apache/src/Configure,v
  retrieving revision 1.96.2.6
  retrieving revision 1.96.2.7
  diff -C3 -r1.96.2.6 -r1.96.2.7
  *** Configure 1997/06/29 18:28:24 1.96.2.6
  --- Configure 1997/07/01 01:38:13 1.96.2.7
  ***
  *** 205,214 
CFLAGS="$CFLAGS -DAIX -U__STR__ -DUSEBCOPY"
DEF_WANTHSREGEX=no
;;
*-ibm-aix*)
  ! OS='IBM AIX'
  ! CFLAGS="$CFLAGS -DAIX -U__STR__"
  ! ;;
*-apollo-*)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
  --- 205,218 
CFLAGS="$CFLAGS -DAIX -U__STR__ -DUSEBCOPY"
DEF_WANTHSREGEX=no
;;
  + *-ibm-aix[1-3].*|*-ibm-aix4.[0-1])
  + OS='IBM AIX < v4.2'
  + CFLAGS="$CFLAGS -DAIX -DNEED_RLIM_T -U__STR__"
  + ;;
*-ibm-aix*)
  ! OS='IBM AIX >= 4.2'
  ! CFLAGS="$CFLAGS -DAIX -U__STR__"
  ! ;;
*-apollo-*)
OS='Apollo Domain'
CFLAGS="$CFLAGS -DAPOLLO"
  
  
  
  1.99.2.4  +2 -0  apache/src/conf.h
  
  Index: conf.h
  ===
  RCS file: /export/home/cvs/apache/src/conf.h,v
  retrieving revision 1.99.2.3
  retrieving revision 1.99.2.4
  diff -C3 -r1.99.2.3 -r1.99.2.4
  *** conf.h1997/06/29 18:08:35 1.99.2.3
  --- conf.h1997/07/01 01:38:13 1.99.2.4
  ***
  *** 155,161 
  --- 155,163 
#define DEFAULT_GROUP "nobody"
#endif
#define DEFAULT_USER "nobody"
  + #ifdef NEED_RLIM_T
typedef int rlim_t;
  + #endif

#elif defined(ULTRIX)
#define HAVE_GMTOFF
  
  
  
  No   revision
  
  
  No   revision
  
  
  1.19.2.5  +1 -1  apache/src/helpers/GuessOS
  
  Index: GuessOS
  ===
  RCS file: /export/home/cvs/apache/src/helpers/GuessOS,v
  retrieving revision 1.19.2.4
  retrieving revision 1.19.2.5
  diff -C3 -r1.19.2.4 -r1.19.2.5
  *** GuessOS   1997/06/27 02:02:01 1.19.2.4
  --- GuessOS   1997/07/01 01:38:16 1.19.2.5
  ***
  *** 61,67 
;;

AIX:*)
  ! echo "${MACHINE}-ibm-aix"; exit 0
;;

dgux:*)
  --- 61,67 
;;

AIX:*)
  ! echo "${MACHINE}-ibm-aix${VERSION}.${RELEASE}"; exit 0
;;

dgux:*)
  
  
  


cvs commit: apache/src CHANGES

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 23:31:02

  Modified:conf  Tag: APACHE_1_2_X  httpd.conf-dist
   src   Tag: APACHE_1_2_X  CHANGES
  Log:
  Back out the "HostnameLookups off" change.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.13.2.2  +4 -3  apache/conf/httpd.conf-dist
  
  Index: httpd.conf-dist
  ===
  RCS file: /export/home/cvs/apache/conf/httpd.conf-dist,v
  retrieving revision 1.13.2.1
  retrieving revision 1.13.2.2
  diff -C3 -r1.13.2.1 -r1.13.2.2
  *** httpd.conf-dist   1997/06/27 02:15:07 1.13.2.1
  --- httpd.conf-dist   1997/07/01 06:30:59 1.13.2.2
  ***
  *** 20,28 

# HostnameLookups: Log the names of clients or just their IP numbers
#   e.g.   www.apache.org (on) or 204.62.129.132 (off)
  ! # The default is off because it'd be overall better for the net if people
  ! # had to knowingly turn this feature on.
  ! HostnameLookups off

# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
  --- 20,29 

# HostnameLookups: Log the names of clients or just their IP numbers
#   e.g.   www.apache.org (on) or 204.62.129.132 (off)
  ! # You should probably turn this off unless you are going to actually
  ! # use the information in your logs, or with a CGI.  Leaving this on
  ! # can slow down access to your site.
  ! HostnameLookups on

# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.  
  
  
  
  No   revision
  
  
  No   revision
  
  
  1.286.2.25 +0 -4  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.286.2.24
  retrieving revision 1.286.2.25
  diff -C3 -r1.286.2.24 -r1.286.2.25
  *** CHANGES   1997/07/01 01:38:12 1.286.2.24
  --- CHANGES   1997/07/01 06:31:00 1.286.2.25
  ***
  *** 16,25 
  *) SECURITY: Apache will refuse to run as "User root" unless
 BIG_SECURITY_HOLE is defined at compile time.  [Dean Gaudet]

  -   *) CONFIG: "HostnameLookups" now defaults to off because it is far better
  -  for the net if we require people that actually need this data to
  -  enable it.  [Linus Torvalds]
  - 
  *) CONFIG: If a symlink pointed to a directory then it would be disallowed
 if it contained a .htaccess disallowing symlinks.  This is contrary
 to the rule that symlink permissions are tested with the symlink
  --- 16,21 
  
  
  


cvs commit: apache/src CHANGES

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 23:32:51

  Modified:src   CHANGES
  Log:
  The "HostnameLookups off" change is only in 1.3.
  
  Revision  ChangesPath
  1.319 +4 -4  apache/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /export/home/cvs/apache/src/CHANGES,v
  retrieving revision 1.318
  retrieving revision 1.319
  diff -C3 -r1.318 -r1.319
  *** CHANGES   1997/07/01 01:15:26 1.318
  --- CHANGES   1997/07/01 06:32:50 1.319
  ***
  *** 1,4 
  --- 1,8 
Changes with Apache 1.3
  + 
  +   *) CONFIG: "HostnameLookups" now defaults to off because it is far better
  +  for the net if we require people that actually need this data to
  +  enable it.  [Linus Torvalds]
  
  *) directory_walk() is an expensive function, keep a little more state to
 avoid needless string counting.  Add two new functions 
make_dirstr_parent
  ***
  *** 78,87 

  *) SECURITY: Apache will refuse to run as "User root" unless
 BIG_SECURITY_HOLE is defined at compile time.  [Dean Gaudet]
  - 
  -   *) CONFIG: "HostnameLookups" now defaults to off because it is far better
  -  for the net if we require people that actually need this data to
  -  enable it.  [Linus Torvalds]

  *) CONFIG: If a symlink pointed to a directory then it would be disallowed
 if it contained a .htaccess disallowing symlinks.  This is contrary
  --- 82,87 
  
  
  


cvs commit: apache/src http_protocol.c http_request.c httpd.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 23:46:05

  Modified:src   http_protocol.c http_request.c httpd.h
  Log:
  We can use read_length instead of adding the new field begun_read_body.
  
  Submitted by: Roy Fielding
  Reviewed by:  Dean Gaudet
  
  Revision  ChangesPath
  1.131 +1 -4  apache/src/http_protocol.c
  
  Index: http_protocol.c
  ===
  RCS file: /export/home/cvs/apache/src/http_protocol.c,v
  retrieving revision 1.130
  retrieving revision 1.131
  diff -C3 -r1.130 -r1.131
  *** http_protocol.c   1997/07/01 01:13:41 1.130
  --- http_protocol.c   1997/07/01 06:46:02 1.131
  ***
  *** 871,877 

rnew->read_length = r->read_length;
rnew->read_body   = REQUEST_NO_BODY;
  - rnew->begun_read_body = r->begun_read_body;

rnew->main = (request_rec *)r;
}
  --- 871,876 
  ***
  *** 1349,1355 

int should_client_block (request_rec *r)
{
  ! if (r->begun_read_body || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  --- 1348,1354 

int should_client_block (request_rec *r)
{
  ! if (r->read_length || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  ***
  *** 1400,1407 
int c;
long len_read, len_to_read;
long chunk_start = 0;
  - 
  - r->begun_read_body = 1;

if (!r->read_chunked) { /* Content-length read */
len_to_read = (r->remaining > bufsiz) ? bufsiz : r->remaining;
  --- 1399,1404 
  
  
  
  1.56  +1 -1  apache/src/http_request.c
  
  Index: http_request.c
  ===
  RCS file: /export/home/cvs/apache/src/http_request.c,v
  retrieving revision 1.55
  retrieving revision 1.56
  diff -C3 -r1.55 -r1.56
  *** http_request.c1997/07/01 01:13:42 1.55
  --- http_request.c1997/07/01 06:46:02 1.56
  ***
  *** 1112,1118 
  */
new->no_local_copy = r->no_local_copy;

  ! new->begun_read_body = r->begun_read_body;  /* We can only read it once 
*/

ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));
  --- 1112,1118 
  */
new->no_local_copy = r->no_local_copy;

  ! new->read_length = r->read_length;  /* We can only read it once */

ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));
  
  
  
  1.123 +0 -1  apache/src/httpd.h
  
  Index: httpd.h
  ===
  RCS file: /export/home/cvs/apache/src/httpd.h,v
  retrieving revision 1.122
  retrieving revision 1.123
  diff -C3 -r1.122 -r1.123
  *** httpd.h   1997/07/01 01:13:42 1.122
  --- httpd.h   1997/07/01 06:46:03 1.123
  ***
  *** 502,508 
  long read_length; /* bytes that have been read */
  int read_body;/* how the request body should be read */
  int read_chunked; /* reading chunked transfer-coding */
  -   int begun_read_body;  /* false (0) until first get_client_block */

  /* MIME header environments, in and out.  Also, an array containing
   * environment variables to be passed to subprocesses, so people can
  --- 502,507 
  
  
  


cvs commit: apache/src http_protocol.c http_request.c httpd.h

1997-06-30 Thread Dean Gaudet
dgaudet 97/06/30 23:50:32

  Modified:src   Tag: APACHE_1_2_X  http_protocol.c http_request.c
httpd.h
  Log:
  We can use read_length instead of adding the new field begun_read_body.
  
  Revision  ChangesPath
  No   revision
  
  
  No   revision
  
  
  1.126.2.2 +1 -4  apache/src/http_protocol.c
  
  Index: http_protocol.c
  ===
  RCS file: /export/home/cvs/apache/src/http_protocol.c,v
  retrieving revision 1.126.2.1
  retrieving revision 1.126.2.2
  diff -C3 -r1.126.2.1 -r1.126.2.2
  *** http_protocol.c   1997/07/01 01:37:08 1.126.2.1
  --- http_protocol.c   1997/07/01 06:50:29 1.126.2.2
  ***
  *** 868,874 

rnew->read_length = r->read_length;
rnew->read_body   = REQUEST_NO_BODY;
  - rnew->begun_read_body = r->begun_read_body;

rnew->main = (request_rec *)r;
}
  --- 868,873 
  ***
  *** 1346,1352 

int should_client_block (request_rec *r)
{
  ! if (r->begun_read_body || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  --- 1345,1351 

int should_client_block (request_rec *r)
{
  ! if (r->read_length || is_HTTP_ERROR(r->status))
return 0;

if (!r->read_chunked && (r->remaining <= 0))
  ***
  *** 1397,1404 
int c;
long len_read, len_to_read;
long chunk_start = 0;
  - 
  - r->begun_read_body = 1;

if (!r->read_chunked) { /* Content-length read */
len_to_read = (r->remaining > bufsiz) ? bufsiz : r->remaining;
  --- 1396,1401 
  
  
  
  1.50.2.3  +1 -1  apache/src/http_request.c
  
  Index: http_request.c
  ===
  RCS file: /export/home/cvs/apache/src/http_request.c,v
  retrieving revision 1.50.2.2
  retrieving revision 1.50.2.3
  diff -C3 -r1.50.2.2 -r1.50.2.3
  *** http_request.c1997/07/01 01:37:09 1.50.2.2
  --- http_request.c1997/07/01 06:50:30 1.50.2.3
  ***
  *** 1095,1101 
  */
new->no_local_copy = r->no_local_copy;

  ! new->begun_read_body = r->begun_read_body;  /* We can only read it once 
*/

ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));
  --- 1095,1101 
  */
new->no_local_copy = r->no_local_copy;

  ! new->read_length = r->read_length;  /* We can only read it once */

ap_snprintf (t, sizeof(t), "%d", r->status);
table_set (new->subprocess_env, "REDIRECT_STATUS", pstrdup (r->pool, 
t));
  
  
  
  1.111.2.5 +0 -1  apache/src/httpd.h
  
  Index: httpd.h
  ===
  RCS file: /export/home/cvs/apache/src/httpd.h,v
  retrieving revision 1.111.2.4
  retrieving revision 1.111.2.5
  diff -C3 -r1.111.2.4 -r1.111.2.5
  *** httpd.h   1997/07/01 01:37:09 1.111.2.4
  --- httpd.h   1997/07/01 06:50:30 1.111.2.5
  ***
  *** 472,478 
  long read_length; /* bytes that have been read */
  int read_body;/* how the request body should be read */
  int read_chunked; /* reading chunked transfer-coding */
  -   int begun_read_body;  /* false (0) until first get_client_block */

  /* MIME header environments, in and out.  Also, an array containing
   * environment variables to be passed to subprocesses, so people can
  --- 472,477