You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Dean Gaudet <dg...@arctic.org> on 1997/03/13 13:47:03 UTC

[STATUS] I should be sleeping

1.2b8 status as of Thu Mar 13 04:42:38 PST 1997

  * Committed since 1.2b7:

    * HP MPE/iX fixes
    * replace bcopy with memmove for ANSIfriendliness
    * UXP/DS(V20) port
    * MachTen fine tuning
    * PR#186: Make declaration of add_env_variable agree with definiton.
    * PR#210: Missing semicolon.
    * Correctly handle Swedish filenames
    * buff.c header include fixes
    * create_argv() fixes
    * remove cleanups from bpushfd()
    * help avoid virtual host confusion
    * PR#40: include path_info for error when file doesn't exist
    * PR#59: os/2: allow for cgi files without the .EXE extension
    * missing header_parser slots in modules
    * PR#146, PR#187: is_url() not HTTP/1.1 conformant
    * log long headers in case it is an attack
    * PR#194: ErrorDocument broken due to an optimization in 1.2b7
    * PR#190: Reduced IdentityCheck timeout to 30 seconds
    * PR#160: invoke_handler() doesn't handle mime arguments
    * memory management goof in alloc.c
    * support/Makefile.tmpl and LIBS
    * deal with long hostnames at gethostname() call
    * clear memory allocated for listeners
    * PR#212: improved handling of ip addresses in VirtualHost

Agenda for 1.2b8-dev
====================

Patches available:

    * charset mod_neg iso-8859-1 fixup
	<Pi...@aardvark.localnet>
	Status: Paul posted patch, Dean +1, Chuck +1, Jim +1
	    Roy gives it -1, "Sorry, the right answer is 2" (see the
	    message).
	New Status:  Petr Lampa posted a revamp, see
	    <19...@boco.fee.vutbr.cz>

    * Ken's [PATCH] Re: Putting modules in their own subdirectories
	(after many revisions)
	<97...@decus.org>
	Status: Chuck +1, Jim +1

    * Roy's [PATCH]: "Undying keepalives in 1.2b7" on Solaris 2.x (fwd)
	<97...@paris.ics.uci.edu> which is his second take
	on the patch after some comments from Dean.  But Dean asked an
	innocent question that lead Roy to find more ugliness.

    * Roy's [PATCH]: "kernel panics and dumps core" on SunOS 4.x (fwd)
	<97...@paris.ics.uci.edu>
	Status: Dean +1

    * Petr's [PATCH] "Type Map file bug causes 100% CPU and mem leak"
	<19...@boco.fee.vutbr.cz>

Showstoppers with no patches yet:

  * 3 seconds delay in CGI execution on SunOS 4.x, see PR 122
       Status: no patch.
       Info: Pages containing script output show up with a delay of 3
             seconds (there was no such delay in Apache 1.1.1).
             [rindfuss@medea.wz-berlin.de] tracked the problem down to
             source file alloc.c, function free_proc_chain. This function
             contains a conditional call to sleep(3), which causes the delay.

       for (p = procs; p; p = p->next) {
          if (p->kill_how == kill_after_timeout) {
            /* Subprocess may be dead already.  Only need the timeout if not. */
            if (kill (p->pid, SIGTERM) != -1)
              need_timeout = 1;
          } else if (p->kill_how == kill_always) {
            kill (p->pid, SIGKILL);
          }
        }

        /* Sleep only if we have to... */

        if (need_timeout) sleep (3);

        [RobH: So CGI included as SSI hangs around for longer and needs
               to be SIGTERM'ed.  Why?]

        [Roy: note also that a call to sleep will blow-out any other timeout]

  * SIGHUP on Solaris 2.x causes server to die with "bind: Address
    already in use" and "httpd: could not bind to address 131.188.2.47
    port 80".  Server is Listen-ing on four IP addresses at port 80;
    the one above is the last Listen directive.  Three virtual hosts
    declared as well as main/default server.
    (no PR#, 1.2b7, 24/2/1997, <Er...@informatik.uni-erlangen.de>)
      - was also reported by same user against 1.2b4
      - and reported on linux as well, has to do with proxy maybe (Aram)

  * redirect of index file causes SEGV [Marc]
	Status: have a way to stop the core dump, but that doesn't make
	it work properly.
	See also: <Pi...@localhost.imdb.com>

Documentation Changes that should make 1.2:

  * mod_template.c illustration of command handler call semantics for
    the different directive argument types (et alia).  +1 Dirk, Chuck,
    but needs work.  I'll try to flesh this out in the next few days if
    these mean "+1 to including in distribution".  +1 from Ralf.
    ... and more work ...
    And Ken says check it all out at <http://Test.Remulak.DECUS.Org:9000/>

  * include Dean's <http://www.arctic.org/~dgaudet/vhost> doc
    and maybe expand the docs on how to configure vhosts to avoid DNS
    lookups (and why).

No patches yet:
  
  * [BUG] garbage_coll() not called in proxy if filsystem full
    <19...@boco.fee.vutbr.cz>

  * libucb problems with readdir() under Solaris and other SVR4

  * [BUG]: "SSI stopped working in 1.2b7" on Solaris 2.x (fwd)
    <Pi...@localhost.imdb.com>

  * Marc has changed his mind and wants to have a check to be sure
    log directory(ies) isn't writable by anyone except the user starting
    the server.  The posting in bugtraq only highlites the problem.
    Needs override.  See NCSA code for sample implem.
	Status: Marc busy writing, Ed +1 on putting in to b7

  * wrong response to proxy request without proxy
	<97...@paris.ics.uci.edu>

  * redo lingering_close to check for old sockets to close out before
    accept() in child.
	Status: doesn't look to be overly clean to do in the current
	framework.  Will not have time to do implementation for this
	beta in any case.  If it turns out to be a big issue,
	could go in later.  (1.2.1?)

  * CGIs don't get PIPE under FreeBSD; under Solaris they get a TERM
    and then a PIPE in close succession.  Hmm.  Marc will look when
    he gets a chance.

  * Solaris "accept: Too many levels of remote in path" [marc]

  * some better suexec docs would be really nice, detailing some of the
    security risks and compromises discussed
	Status: I think Randy said something about doing it at one point,
		but no one can write what  I think should be there better
		than me, if I ever have time.  Randy says he thinks
		Jason is perhaps doing them.

  * error compiling on NeXT:
	In file included from http_main.c:108:
	/NextDeveloper/Headers/bsd/netinet/tcp.h:57: duplicate member `th_off'
	/NextDeveloper/Headers/bsd/netinet/tcp.h:58: duplicate member `th_x2'

	Status: got a login in a NeXT OpenStep 4.x machine to test,
	looks like an interaction between gcc and the header
	files.  It is trying to include definitions for both big and
	little endian platforms, and that no work.

  * Marc says Apache won't compile with HAVE_SNPRINTF defined as things
    are now because not everything includes conf.h.
       Status: Fix it when we have a platform which has snprintf.  Jim
	will look at; perhaps just include conf.h everywhere

  * new header_parse API hook is called too often
       Status: RobH posted patch, had second thoughts.  He
       suggests that mod_browser be optimised by detecting if it has been
       called already and returning early if it has.
	Roy says see also the suggestion by Doug MacEachern regarding
	addition of is_main_request() test so that any module can avoid this.

  * With no limits on <Directory />, a UserDir of "./" allows "~root/"
    to walk down the entire filesystem.
    (no PR#, 1.1.3, 21/2/1997, "Michael Douglass" <mi...@texas.net>)
      - "don't do that", but should probably be noted in the UserDir
	documentation and the Security Tips page.  That the default
	access is "if the server can reach it, it can serve it" should
	definitely be noted.  (<Directory> description and security
	tips?)
      - perhaps a future DisallowUserDir directive, a la ftp.deny,
	listing usernames not accessible through ~name?

  * Type map can't find appropriate document for language on Solaris
    2.x.  (I can't gistify this one; full details in message ID
    <Pi...@localhost.imdb.com>.)
    Reporter has provided tar.gz file of config info.
    (no PR#, 1.2b7, 24/2/1997, <ej...@cise.ufl.edu>)

  * Make of server fails during ld phase on AIX 3.2.5 with undefined
    symbol ".flock"
    (no PR#, 1.2b7. 24/2/1997, <we...@mail.pittstate.edu>)

  * <IMG SRC="a CGI"> crates [sic] zombies on FreeBSDLinux
    (see <Pi...@localhost.imdb.com>
    for the details; I'm not going to try to decode 'em)  Reporter
    says hackers have told it the cause lies in an error in the loop
    structure in alloc.c's fork()/signal()/wait() handling
    (no PR#, 1.1.1/1.2.something (?), 23/2/1997, <sk...@www.russia.net>)
      - Marc said it *might* be related to the kindercide issue
    
  * SONY NEWS port.  See both:
    <Pi...@taz.hyperreal.com>
    <Pi...@taz.hyperreal.com>
    Needs work to turn it into a patch


UnixWare:

    Chuck thinks all of these are solved using the method presented by
    Joe D.  Chuck will implement/document?

    * SIGTERM to parent on UnixWare kills it but leaves children as
	zombies, requiring reboot.  SIGHUP reloads it fine when it's
	running. (no PR#, 1.2b6, 21/2/1997, <ta...@xl.ca>)

    * Randy says "seems that the processes on a Unixware machine are
	eventually all dying off. Mind you, I have not seen this, but
	that is what is being reported.  Sounds like perhaps the server is not
	respawning new children after MaxRequestsPerChild has been reached."

    * UnixWare 2.1.1 needs USE_FCNTL_SERIALIZE_ACCEPT to keep from
	locking up.
	(no PR#, 1.2b6, reported by <jr...@cc.usu.edu>)
	- reporter says "UW 2.1.1 requires installation of UW patch
	    ptf3123 for proper operation of accept()".  The patch is
	    available from ftp.sco.com
	- He also says that defining NO_LINGCLOSE reduces FIN_WAIT_2
	    incidences in this environment
	- Chuck told the reporter "it" (presumably the USE_FCNTL define)
	    will be in 1.2b8, and info about the OS patch will be put in the
	    online docs.

Planning/design items:

    * should the bug report page be in CVS?  Should it be in the htdocs
      tree or a seperate place?  Should it be distributed with Apache?
      The same holds for everything on the Apache web site.  Marc would
      like to see it all in CVS, but not necessarily distributed
      with Apache.
      Roy says: It would be nice if all of the non-archive parts
      of the project tree were in a separate cvs module -- it would
      sure make updating Hyperreal a lot easier (and safer).

    * should perhaps start to think about exactly how we want to
      handle contrib patches/programs in 1.2.  Directory on the web site?
      Include in distribution?

Contrib stuff / future:

  * PR#161 -- mod_dir performance with negotiation
	Status: Petr posted patch, Dean +1 on part
	Petr posted query about how it should be redone.

  * Chris Adams <ca...@ro.com> patch to mod_log_config to add %m and %c.

  * "Large groups cause authentication errors" on FreeBSD
      [salari@cs.ubc.ca]; problem looks to be MAX_STRING_LEN buffer
      in groups_for_user.

  * mod_log_config patch for conditional logging
	Status: contrib, not in server

  * Jim has patch for time taken to handle a request in status module

  * Ed has an updated patch for limiting connections per IP

  * mod_include is still slow.

  * Some mirrors are out-of-date, Brian will investigate

  * add some setlocale stuff?

  * update bug report page to not have email form
	Status: +1 Roy, Dean, Marc (but some changes suggested), patch
		reposted with changes.  Needs input from people handling
		current bug reports.
	New status: reposted, still need input from people handling bug
		reports via mail right now.

  * status module available from .htaccess files; Ken posted patch

  * status report shows PIDs in empty slots, user supplied some sort
     of patch; behavior now is correct, but perhaps some cleanup of
     how the results are displayed could be done after 1.2...
     <Pi...@localhost.imdb.com>

  * Marc proposed keeping a list of things broken for HTTP/1.1; on the
      Web or part of the distribution?
      (no PR#, 1.2, 21/2/1997, "Marc Slemko" <ma...@znep.com>)
        - Chuck likes the idea (hopefully will reduce redundant
    	  reports); thinks it should be on the Web
        - Ken thinks it should be in the htdocs tree so it hits both
	- Chuck gives +1 to Ken's idea, so does Ralf

  * Rob's "DONE" status response check for die()
	<Pi...@localhost.imdb.com>
	Roy says it's a feature... Dean agrees, thinks we should slate
	something for 2.0 that can handle this cleanly.

  * config/178: Module with server_config but no per-dir config will
	seggy in set_flag_slot
	Status: patch given in report, +1 Roy,
	Dean say no because the patch confuses per-server and per-directory
	configs... Ken agrees with Dean.

  * tem@global2000.net provided a patch for mod_imap to make it more
    friendly with MS FrontPage map files.  Available in
    <Pi...@twinlark.arctic.org>

  * Dean provided a patch that uses herror() to display more details when
    a name lookup fails (only for the ones that cause the server to exit).
    <Pi...@twinlark.arctic.org>
    Also, [PATCH] improved error reporting
    <Pi...@twinlark.arctic.org>

  * Dean's gif89 and expires hack
    <Pi...@twinlark.arctic.org>