Return-Path: Delivered-To: new-httpd-archive@hyperreal.org Received: (qmail 2646 invoked by uid 6000); 30 Jan 1999 09:54:24 -0000 Received: (qmail 2638 invoked from network); 30 Jan 1999 09:54:22 -0000 Received: from i.meepzor.com (HELO Mail.MeepZor.Com) (cvs@204.146.167.214) by taz.hyperreal.org with SMTP; 30 Jan 1999 09:54:22 -0000 Received: (from cvs@localhost) by Mail.MeepZor.Com (8.8.5/8.8.5) id XAA29851; Fri, 29 Jan 1999 23:45:16 -0500 Date: Fri, 29 Jan 1999 23:45:16 -0500 Message-Id: <199901300445.XAA29851@Mail.MeepZor.Com> From: Rodent of Unusual Size To: Apache HTTP developers Subject: [STATUS] (apache-1.3) Fri Jan 29 23:45:12 EST 1999 X-Note: This is an automated message. Sender: new-httpd-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org 1.3 STATUS: Last modified at [$Date: 1999/01/25 22:55:31 $] Release: 1.3.5-dev: current. 1.3.4: Tagged and rolled on Jan. 9. Released on 11th, announced on 12th. 1.3.3: Tagged and rolled on Oct. 7. Released on 9th, announced on 10th. 1.3.2: Tagged and rolled on Sep. 21. Announced and released on 23rd. 1.3.1: Tagged and rolled on July 19. Announced and released. 1.3.0: Tagged and rolled on June 1. Announced and released on the 6th. 2.0 : In pre-alpha development, see apache-2.0 repository RELEASE SHOWSTOPPERS: RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP: * Randy's proposed changes for binbuild: 1. Change to build binary only distribution 2. Use standard Apache layout [It is currently using the BinaryDistribution layout that mimics the standard Apache layout _without_ any absolute paths in it (apart from HTTPD_ROOT /usr/local/apache). This makes it possible for a user to install it in _any_ directory.] [Roy: I don't understand what Randy wants to change here.] 3. Add 'make dist' target to call binbuild.sh [Roy: That would require a Makefile, which is what binbuild creates. I don't see any point in that.] 4. Create toplevel 'setup' script for install to mirror win32 name [It is currently creating "install-bindist.sh"] * long pathnames with many components and no AllowOverride None Workaround is to define with AllowOverride None, which is something all sites should do in any case. Status: Marc was looking at it. Documentation that needs writing: Available Patches: * Roy's [PATCH] Core dump with Language Negotiation?!? Message-ID: <9901180536.aa11781@paris.ics.uci.edu> Status: Roy +1 * Tony Finch's [PATCH] to mod_log_config.c to get both the 1.3.3 behaviour of %v and the 1.3.4 behaviour as %V. Message-ID: Status: * Ralf's patch to fix append of target name to layout paths Message-ID: <19990114114248.A14406@engelschall.com> Status: Ralf +1, Roy +1 * Ralf's adjusted version of Fred's Add strip flags variables Message-ID: <19990114084058.A9039@engelschall.com> Status: Ralf +1 * Fred's PATCH: Add strip flags variables in Makefile.tmpl Message-ID: <199901140049.QAA14928@scv4.apple.com> Status: Ralf -0 (see above replacement) * Fred's PATCH: man page section numbers Message-ID: <199901140041.QAA05676@scv3.apple.com> Status: Ralf +1, Roy +1 * Fred's PATCH: Add cgidir, htdocsdir, iconsdir variables in Makefile.tmpl Message-ID: <199901140037.QAA18934@scv1.apple.com> Status: Ralf +1 (on concept) * Fred's PATCH: Add Mac OS X Server Layout file layout Message-ID: <199901140039.QAA31642@scv2.apple.com> Status: Roy +1 * Jim Patterson's patch to make mod_info work on Win32 Message-ID: PR#1442 Status: Lars +1 (on concept) * Peter Greis' new '%m' CustomLog option: the time taken to serve the request, in milli-seconds. Message-ID: PR#2838 Status: Jim +0 (as is, the patch requires rework since it needs to be aware of NO_GETTIMEOFDAY and NO_TIMES as well as implement a times() alternative. Not only that, but with extended_status, we calculate this anyway). * Ronald Tschal�r's ap_uuencode() bugfix Message-ID: PR#3411 Status: Lars +1 (on concept) * Michael van Elst's patch [PR#3160] to improve mod_rewrite's in-core cache handling by using a hash table. Message-ID: Status: Lars +1, Jim +1, Ralf +1 (on concept, but because the code change is not trivial I want to first walk though it line by line the next days before we commit it). * Juan Gallego's patch to add CSH-style modifiers (:h, :r, :t, :e) to mod_include's variable processing. Mesage-ID: PR#3246, also available at Status: Ken -0 for 1.3/+0 for 2.0, Lars -0 for 1.3 * Eric Prud'hommeaux's mod_dir mods for file-level access control. Message-ID: Status: Jim -0 (The current behavior seems logical to me. If there was more universal interest in changing it, then that would be a different matter). * Eric Prud'hommeaux's mods for practical negotiation with file level access control. Message-ID: Status: * Ronald Tschal�r's major update of mod_digest Message-ID: <199901050917.KAA10860@chill.innovation.ch> Status: Big change -- needs review. In progress: * Marc's [PATCH] PR#3323: recursive includes Message-ID: Status: Marc +1, Jim +1 (concept) * Needs more in-depth review * * Mark Bixby's freshening up the MPE/iX port (mostly APACI) Message-ID: <199811162227.OAA18137@spock.dis.cccd.edu> Status: Mark says: "...currently waiting for HP to fix two OS bugs. A fix for siglongjmp() is available and has been tested successfully by me, but has yet to be included in a public patch. The likely cause of the "EINTR from fopen()" bug has been identified, but analysis on how to fix it continues." * Doug MacEachern's libapr - Generic Apache Request Library (Alpha) This package contains modules for manipulating client request data via the Apache API with Perl and C. Status: http://www.pobox.com/~dougm/libapr-0.20_01.tar.gz Needs patch: * get_path_info bug; ap_get_remote_host should be ap_vformatter instead. See: * uri issues - RFC2068 requires a server to recognize its own IP addr(s) in dot notation, we do this fine if the user follows the dns-caveats documentation... we should handle it in the case the user doesn't ever supply a dot-notation address. * Problems dealing with .-rooted domain names such as "twinlark." versus "twinlark.arctic.org.". See the thread containing Message-ID: <19980203211817.06723@deejai.mch.sni.de> for more details. In particular this affects the correctness of the proxy and the vhost mechanism. * proxy_*_canon routines use r->proxyreq incorrectly. See * work around a Navigator/Mozilla bug when mod_proxy is used (broken images). Message-ID: Status: Lars' patch was vetoed. Roy and Dean think that it is probably another buffer magic number error and should be tested to find out and, if so, fixed like it was in core. * ap_escape_html() always duplicates the string, even when there is no change and the caller would be happy to use the original. What is needed is a separate interface for "don't need a dup" situations, like just about everywhere we use it in bvputs and bputs calls. * Should we disallow requests with bogus characters in the method? See * A mechanism is needed for applying access control to methods that are not known by the server core, either using a Limit __unknown__ as in <<8B57882C41A0D1118F7100805F9F68B50631A7B2@RED-MSG-45>, or via a LimitExcept directive. Open issues: * Official retirement of 1.2; when? Ken suggests as of 1.3.4. 'Retirement' to be interpreted as removing the verbiage from the main Apache page, but leaving the kits in /dist/. Status: Ken +1, Randy +1, Dean +1, Ralf +1, Jim +1 * Someone other than Dean has to do a security/correctness review on psprintf(), bprintf(), and ap_snprintf(). In particular these routines do lots of fun pointer manipulations and such and possibly have overflow errors. The respective flush_funcs also need to be exercised. o Jim's looked over the ap_snprintf() stuff (the changes that Dean did to make thread-safe) and they look fine. o Laura La Gassa's looked over ap_vformatter & other related code o Martin did a "source review" as well. o Could still use 1 or 2 more sets of eyeballs. Status: Is this still valid?? * Paul would like to see a 'gdbm' option because he uses it a lot. * Maybe a http_paths.h file? See +1: Brian, Paul, Ralf, Martin +0: Jim (not for 1.3.0) * Release builds: Should we provide Configuration or not? Should we 'make all suexec' in src/support? +1: Brian, Jim, Ken +1 (possible suexec path issue, though) * root's environment is inherited by the Apache server. Jim & Ken think we should recommend using 'env' to build the appropriate environment. Marc and Alexei don't see any big deal. Martin says that not every "env" has a -u flag. * Marc's socket options like source routing (kill them?) Marc, Martin say Yes * Ken's PR#1053: an error when accessing a negotiated document explicitly names the variant selected. Should it do so, or should the original URI be referenced? * Proposed API Changes: - r->content_language is for backwards compatibility... with modules that may not link any longer without some minor editing. The new field is r->content_languages. Heck it's not even mentioned in apache-devsite/mmn.txt when we got content_languages (note the s!). The proposal is to remove r->content_language: Status: Paul +1, Ralf +1, Ken +1, Martin +1 - child_exit() is redundant, it can be implemented via cleanups. It is not "symmetric" in the sense that there is no exit API method to go along with the init() API method. There is no need for an exit method, there are already modules using cleanups to perform this (see mod_mmap_static, and mod_php3 for example). The proposal is to remove the child_exit() method and document cleanups as the method of handling this need. Status: Rasmus +1, Paul +1, Jim +1, Martin +1, Ralf +1, Ken +1 * Should we re-enable nagle now that we're non-buffering CGIs? See various messages from Marc in March 98. * TZ should not be dealt with specially any longer now that we have "PassEnv". See Jim: IMO it's too late in the game for this... I'm sure this would cause some strange bug reports as people's cgi-scripts no longer work correctly ("It worked just fine before I upgraded to 1.3.0") unless we warn people in big nasty letters to add PassEnv TZ to their config files "just in case" and hope they do it :) * In ap_bclose() there's no test that (fb->fd != -1) -- so it's possible that it'll do something completely bogus when it's used for read-only things. - Dean Gaudet * Roy's HTTP/1.1 Wishlist items: 1) byte range error handling * use of spawnvp in uncompress_child in mod_mime_magic - doesn't use the new child_info structure, is this still safe? Needs to be looked at. * suexec doesn't understand argv parameters; e.g. fails even when "ls" is in the same directory because suexec is trying to stat a file called "ls -l". A patch for this is available at http://www.xnet.com/~emarshal/suexec.diff and it's not bad except that it doesn't handle programs with spaces in the filename (think win32, or samba-mounted filesystems). There are several PR's to this and I don't see for security reasons why we can't accomodate it, though it does add complexity to suexec.c. PR #1120 Brian: +1 Win32 specific issues: Important * fix O(n^2) attack in mod_isapi.c ... i.e. recopy the code from scan_script_headers_err_core. In progress: * Ben's ASP work... All agree it sounds cool. * DDA's adding a tray application to the Windoze version for ease of status/management. <01BCDB29.2C04DEB0@caravan.individual.com> <01BCDB2A.F8C09010@caravan.individual.com> Status: Ken +1, Sameer +1, Martin +1, Ben +1 (as long as we get a single executable) Paul: No like Win95 specific stuff Ken: What's W95-specific about it? Help: * should trap ^C when running not-as-service and do proper shutdown * should have a pretty little icon for Apache on Win32 * proxy module doesn't load on Win95. Why? Good question. PR#1462. * Proxy cache garbage collection doesn't work. PR#1891 * "Directory /", "Directory C:/" both fail to do anything, while "Directory *" SEGVs. * chdir() for CGI scripts and mod_include #exec needs to be re-implemented now that CreateProcess is being used. * process/thread model - need dynamic thread creation/destruction, similar to Unix process model - can't use WaitForMultipleObjects in the same way we do now, since that has a limit of 64(!) objects. Grr. PR#1665 * some errors printed by CGIs to stderr don't end up making it to the server log unless an extra debugging message is added after they run? (PR#1725 indicates this may not be just Win32) * handle bugs that make it pop up errors on console, ie. segv equiv? Can we do this? Need to make it robust. * install - make installshield work - config in cvs tree? - install docs, etc.? - location for install * the mutex should be critical-regions, since the current design is creating a mess of SO calls that are unnecessary * we don't mmap on NT. Use TransmitFile? * CGIs - docs on how they work w/scripts - use registry to find interpreter? - WTF is the buffering coming from? - we don't have a way to make non-blocking files on NT! * performance * documentation: - running the server without admin - how CGIs work - update README.NT - short/long name handling - better status page on current state of NT for users * http_main.c hell - split into two files? * who should run the service? Who exactly is the "system account"? docs say: Localsystem is a very privileged account locally, so you shouldn't run any shareware applications there. However, it has no network privileges and cannot leave the machine via any NT-secured mechanism, including file system, named pipes, DCOM, or secure RPC. and: A service that runs in the context of the LocalSystem account inherits the security context of the SCM. It is not associated with any logged-on user account and does not have credentials (domain name, user name, and password) to be used for verification. This has several implications: [... removed ...] That _really_ sucks. Can we recommend running Apache as some other user? * modules that need to be made to work on win32 - mod_example isn't multithreadreded - mod_unique_id (needs mt changes) - mod_auth_db.c (do we want to even try this? We should have some db of some sort... what else can we pick from under win32?) - mod_auth_dbm.c - mod_info.c (PR#1442 re exporting symbols for it...) - mod_log_agent.c - mod_log_referer.c - mod_mime_magic.c (needs access to mod_mime API stage...) * do something to disable bogus warnings * rfc1413.c has static storage which won't work multithreaded * mod_include --> exec cgi, exec cmd, etc. don't work right. Looks like a code path that isn't run anywhere else that has something not quite right... A PR or two on it. * signal type handling - how to rotate logs from command line? (Point people to Andrew Ford's cronolog because it's "better" than ours?) * Currently if you double click on the conf files or the log files you get a useless dialog offering the set of all executables, usually after a very long pause. Ought to stuff .conf in the registry mapping it to text. * apparently either "BrowserMatch" or the "nokeepalive" variable cause instability - see PR#1729. Binaries The goal here is to have two columns of all-Y (where applicable) for the two stable release versions, and nothing under Old unless the new version just doesn't work on that platform. 1.2.6 1.3.4 Old aix_4.1 N N 1.2.5, 1.3.1 alphalinux N N 1.3.0 aux_3.1 N N 1.3.0 decalphaNT N N 1.3b6 dunix_4.0 N N 1.2.4, 1.3.0, 1.3.1 freebsd_2.1 N N 1.2.4 freebsd_2.2 N N 1.2.5 hpux_10.20 N N 1.2.5 hpux_11 N N 1.3.2 irix_6.2 N N 1.2.5 linux_2.x N N 1.2.4, 1.3.0 netbsd_1.2 N N 1.2.4 os2 N N 1.3.2 reliantunix_5.4 Y N 1.3.1 solaris N N 1.2.5, 1.3.0, 1.3.1 sparclinux N N 1.3.0, 1.3.1 sunos_4.1.x N N 1.2.5 ultrix_4.4 N N 1.2.4 win32 - N 1.3.2 (is symlink okay?)