cvs commit: apache-1.3 README.configure
rse 00/02/10 18:02:52 Modified:.README.configure Log: GNU layout is no longer default, so default path is "bin" and not "sbin" Revision ChangesPath 1.21 +1 -1 apache-1.3/README.configure Index: README.configure === RCS file: /e/apache/REPOS/apache-1.3/README.configure,v retrieving revision 1.20 retrieving revision 1.21 diff -u -u -r1.20 -r1.21 --- README.configure 1999/12/20 14:27:10 1.20 +++ README.configure 2000/02/10 17:02:51 1.21 @@ -26,7 +26,7 @@ already initially configured, so you can immediately fire it up the first time via -$ PREFIX/sbin/apachectl start +$ PREFIX/bin/apachectl start to get your first success event with the Apache HTTP server without having to fiddle around with various options for a long time. On the other hand
cvs commit: apache-1.3 config.layout
rse 99/12/28 10:09:48 Modified:src CHANGES .config.layout Log: Add also BSDI layout. Submitted by: Timur Bakeyev <[EMAIL PROTECTED]>] PR: 5154 Revision ChangesPath 1.1486+3 -2 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /e/apache/REPOS/apache-1.3/src/CHANGES,v retrieving revision 1.1485 retrieving revision 1.1486 diff -u -u -r1.1485 -r1.1486 --- CHANGES 1999/12/21 07:52:53 1.1485 +++ CHANGES 1999/12/28 09:09:32 1.1486 @@ -11,8 +11,9 @@ *) Updated README.config to reflect current APACI state. [Brian Slesinsky <[EMAIL PROTECTED]>] PR#5397 - *) Added SuSE layout to config.layout for convinience reasons. - [Sebastian Helms <[EMAIL PROTECTED]>] PR#5112 + *) Added SuSE and BSDI layouts to config.layout for convinience reasons. + [Sebastian Helms <[EMAIL PROTECTED]>, Timur Bakeyev + <[EMAIL PROTECTED]>] PR#5112 PR#5154 *) Consistency cleanup of the complete APXS tool and corresponding manpage. [Ralf S. Engelschall] 1.12 +20 -0 apache-1.3/config.layout Index: config.layout === RCS file: /e/apache/REPOS/apache-1.3/config.layout,v retrieving revision 1.11 retrieving revision 1.12 diff -u -u -r1.11 -r1.12 --- config.layout 1999/12/17 22:23:07 1.11 +++ config.layout 1999/12/28 09:09:48 1.12 @@ -170,3 +170,23 @@ proxycachedir: $localstatedir/cache/httpd +# BSD/OS layout + +prefix:/var/www +exec_prefix: /usr/contrib +bindir:$exec_prefix/bin +sbindir: $exec_prefix/bin +libexecdir:$exec_prefix/libexec/apache +mandir:$exec_prefix/man +sysconfdir:$prefix/conf +datadir: $prefix +iconsdir: $datadir/icons +htdocsdir: $datadir/htdocs +cgidir:$datadir/cgi-bin +includedir:$exec_prefix/include/apache +localstatedir: /var +runtimedir:$localstatedir/run +logfiledir:$localstatedir/log/httpd +proxycachedir: $localstatedir/proxy + +
cvs commit: apache-apr/pthreads README.rse
rse 99/08/19 18:00:31 Modified:pthreads README.rse Log: Use Pth 1.1 release versions now Revision ChangesPath 1.2 +5 -7 apache-apr/pthreads/README.rse Index: README.rse === RCS file: /e/apache/REPOS/apache-apr/pthreads/README.rse,v retrieving revision 1.1 retrieving revision 1.2 diff -u -u -r1.1 -r1.2 --- README.rse1999/08/12 07:31:01 1.1 +++ README.rse1999/08/19 16:00:31 1.2 @@ -97,11 +97,9 @@ Follow these steps: $ cd /apache-apr - $ lynx ftp://alpha.gnu.org/gnu/pth/pth-1.1b3.tar.gz - [You can use also any later Pth version, of course. ] - [Especially release versions >= 1.1.0 from ftp://ftp.gnu.org/gnu/pth/] - $ gunzip ftp://ftp.gnu.org/gnu/pth/pth-1.1.X.tar.gz + $ gunzip /apache-apr/pthread $ CC='cc' \ OPTIM='-O2' \ - CFLAGS='-I\$(SRCDIR)/../pth-1.1b3 -DPTHREAD_EVERYWHERE -DNO_SERIALIZED_ACCEPT' \ - LDFLAGS='-L\$(SRCDIR)/../pth-1.1b3/.libs' \ + CFLAGS='-I\$(SRCDIR)/../pth-1.1.X -DPTHREAD_EVERYWHERE -DNO_SERIALIZED_ACCEPT' \ + LDFLAGS='-L\$(SRCDIR)/../pth-1.1.X/.libs' \ LIBS="-lpthread" \ ./configure \ --with-layout=GNU \
cvs commit: apache-2.0/mpm/conf httpd.conf-dist
rse 99/08/12 13:35:41 Modified:mpm/conf httpd.conf-dist Log: Ops, Scoreboard twice? Revision ChangesPath 1.4 +0 -4 apache-2.0/mpm/conf/httpd.conf-dist Index: httpd.conf-dist === RCS file: /e/apache/REPOS/apache-2.0/mpm/conf/httpd.conf-dist,v retrieving revision 1.3 retrieving revision 1.4 diff -u -u -r1.3 -r1.4 --- httpd.conf-dist 1999/08/12 08:59:11 1.3 +++ httpd.conf-dist 1999/08/12 11:35:41 1.4 @@ -123,10 +123,6 @@ # KeepAliveTimeout 15 - -ScoreBoardFile logs/apache_runtime_status - - # # Server-pool size regulation #
cvs commit: apache-1.3/htdocs/manual/vhosts details_1_2.html vhosts-in-depth.html
rse 98/08/18 23:17:00 Modified:htdocs/manual/vhosts details_1_2.html vhosts-in-depth.html Log: Fix hyperlinks in vhost/ area. Thanks to Jean-Philippe BAUDOUIN <[EMAIL PROTECTED]> for hints. Revision ChangesPath 1.5 +14 -14apache-1.3/htdocs/manual/vhosts/details_1_2.html Index: details_1_2.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/vhosts/details_1_2.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- details_1_2.html 1998/05/20 14:22:46 1.4 +++ details_1_2.html 1998/08/19 06:16:56 1.5 @@ -29,23 +29,23 @@ outside of VirtualHost sections. There are virtual servers, called vhosts, which are defined by VirtualHost sections. The directives Port, ServerName, ServerPath, and ServerAlias can appear anywhere within the definition of a server. However, each appearance overrides the previous appearance @@ -57,7 +57,7 @@ In the absence of any Listen directives, the (final if there are multiple) Port directive in the main_server indicates @@ -114,29 +114,29 @@ If a vhost has no ServerAdmin, ResourceConfig, AccessConfig, Timeout, KeepAliveTimeout, KeepAlive, MaxKeepAliveRequests, or SendBufferSize directive then the respective value is inherited from the main_server. (That is, inherited from whatever 1.5 +14 -14apache-1.3/htdocs/manual/vhosts/vhosts-in-depth.html Index: vhosts-in-depth.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/vhosts/vhosts-in-depth.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- vhosts-in-depth.html 1998/05/20 14:22:47 1.4 +++ vhosts-in-depth.html 1998/08/19 06:16:58 1.5 @@ -29,23 +29,23 @@ outside of VirtualHost sections. There are virtual servers, called vhosts, which are defined by VirtualHost sections. The directives Port, ServerName, ServerPath, and ServerAlias can appear anywhere within the definition of a server. However, each appearance overrides the previous appearance @@ -57,7 +57,7 @@ In the absence of any Listen directives, the (final if there are multiple) Port directive in the main_server indicates @@ -114,29 +114,29 @@ If a vhost has no ServerAdmin, ResourceConfig, AccessConfig, Timeout, KeepAliveTimeout, KeepAlive, MaxKeepAliveRequests, or SendBufferSize directive then the respective value is inherited from the main_server. (That is, inherited from whatever
cvs commit: apache-1.3/src/modules/standard mod_rewrite.h
rse 98/08/17 11:36:19 Modified:src CHANGES src/modules/standard mod_rewrite.h Log: Bump up MAX_ENV_FLAGS in mod_rewrite.h from the too conservatice limit of 5 to 10 because there are some users out there who always have 5 to 8 variables in one RewriteRule and had to patch mod_rewrite.h for every release. So 15 should be now more than enough, even for them. (I never needed more than 4 in my RewriteRules ;-) Revision ChangesPath 1.1029+7 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1028 retrieving revision 1.1029 diff -u -r1.1028 -r1.1029 --- CHANGES 1998/08/16 20:51:53 1.1028 +++ CHANGES 1998/08/17 18:36:16 1.1029 @@ -1,5 +1,12 @@ Changes with Apache 1.3.2 + *) Bump up MAX_ENV_FLAGS in mod_rewrite.h from the too conservatice limit of + 5 to 10 because there are some users out there who always have 5 to 8 + variables in one RewriteRule and had to patch mod_rewrite.h for every + release. So 15 should be now more than enough, even for them. (I never + needed more than 4 in my RewriteRules ;-) + [Ralf S. Engelschall] + *) Make the proxy generate and understand Via: headers [Martin Kraemer] 1.57 +1 -1 apache-1.3/src/modules/standard/mod_rewrite.h Index: mod_rewrite.h === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.h,v retrieving revision 1.56 retrieving revision 1.57 diff -u -r1.56 -r1.57 --- mod_rewrite.h 1998/07/23 11:34:01 1.56 +++ mod_rewrite.h 1998/08/17 18:36:18 1.57 @@ -236,7 +236,7 @@ #define LONG_STRING_LEN 2048 #endif -#define MAX_ENV_FLAGS 5 +#define MAX_ENV_FLAGS 15 #define MAX_NMATCH10
cvs commit: apache-site related_projects.html
rse 98/08/16 23:58:47 Modified:.related_projects.html Log: Add entry for mod_ssl. Revision ChangesPath 1.31 +26 -0 apache-site/related_projects.html Index: related_projects.html === RCS file: /export/home/cvs/apache-site/related_projects.html,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- related_projects.html 1998/07/14 08:27:42 1.30 +++ related_projects.html 1998/08/17 06:58:46 1.31 @@ -23,6 +23,7 @@ Apache-SSL +Apache Interface to SSLeay (mod_ssl) Apache Module Registry PHP Project Apache/Perl Integration Project @@ -61,6 +62,31 @@ free. Inside the United States in order to use Apache with SSL commercially you may want to look at Stronghold or Raven. + + + +http://www.engelschall.com/sw/mod_ssl/";>Apache Interface to SSLeay (mod_ssl) + +This module provides strong cryptography for http://www.apache.org/";>Apache via http://www.netscape.com/";>Netscape's http://www.netscape.com/newsref/std/SSL.html";>Secure Socket Layer +(SSL) through the free SSL implementation library http://www.ssleay.org/";>SSLeay from mailto:[EMAIL PROTECTED]">Eric A. Young and mailto:[EMAIL PROTECTED]">Tim Hudson. The mod_ssl package was +created by http://www.engelschall.com/";>Ralf S. Engelschall and +is based in parts on the http://www.apache-ssl.org/";>Apache-SSL +package developed by mailto:[EMAIL PROTECTED]">Ben Laurie. + + +The mod_ssl package is http://www.engelschall.com/sw/mod_ssl/distrib/";>distributed as a +source extension and set of patches for the Apache 1.3 webserver from outside +the United States. Inside the United States you are able to use it for +non-commercial purposes for free if you use RSAREF (due to various patents). +Outside the United States you can use it for non-commercial and commercial +purposes for free. http://raven.covalent.net/";
cvs commit: apache-1.3 configure
rse 98/08/15 08:02:46 Modified:src CHANGES .configure Log: Make sure the config.status file is not overridden when just ``configure --help'' is used. PR: 2844 Revision ChangesPath 1.1026+3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1025 retrieving revision 1.1026 diff -u -r1.1025 -r1.1026 --- CHANGES 1998/08/14 03:00:15 1.1025 +++ CHANGES 1998/08/15 15:02:44 1.1026 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Make sure the config.status file is not overridden when just + ``configure --help'' is used. [Ralf S. Engelschall] PR#2844 + *) Split MODULE_MAGIC_NUMBER into _MAJOR/_MINOR numbers. This should provide a way to trace API changes that add functionality but do not create a compatibility issue for precompiled modules, etc. 1.43 +36 -33apache-1.3/configure Index: configure === RCS file: /export/home/cvs/apache-1.3/configure,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- configure 1998/07/28 17:26:45 1.42 +++ configure 1998/08/15 15:02:46 1.43 @@ -81,10 +81,11 @@ ## pre-determine runtime modes ## +help=no quiet=no verbose=no case "$*" in ---help|*--help|*--help* ) quiet=yes ;; +--help|*--help|*--help* ) help=yes; quiet=yes ;; --quiet|*--quiet|*--quiet* ) quiet=yes ;; --verbose|*--verbose|*--verbose*|-v|*-v|*-v* ) verbose=yes ;; * ) ;; @@ -267,40 +268,42 @@ # create a config status script for restoring # the configuration via a simple shell script -rm -f $configstatus 2>/dev/null -echo "#!/bin/sh" >$configstatus -echo "##" >>$configstatus -echo "## $configstatus -- APACI auto-generated configuration restore script" >>$configstatus -echo "##" >>$configstatus -echo "## Use this shell script to re-run the APACI configure script for" >>$configstatus -echo "## restoring your configuration. Additional parameters can be supplied." >>$configstatus -echo "##" >>$configstatus -echo "" >>$configstatus -for var in CC OPTIM CFLAGS CFLAGS_SHLIB LDFLAGS LD_SHLIB LDFLAGS_SHLIB \ - LDFLAGS_SHLIB_EXPORT LIBS INCLUDES RANLIB; do -eval "val=\"\$$var\"" -if [ ".$val" != . ]; then -echo "$var=$val" |\ -sed -e 's:\(["$\\]\):\\\1:g' \ --e 's:\([A-Z]*=\):\1":' \ --e 's:$:" \\:' >>$configstatus -fi -done -if [ $# -eq 0 ]; then -echo "./configure" >>$configstatus -else -echo $SEO "./configure \\" >>$configstatus -for arg -do -echo "$arg" |\ -sed -e 's:\(["$\\]\):\\\1:g' \ --e 's:^:":' \ --e 's:$:" \\:' >>$configstatus +if [ ".$help" = .no ]; then +rm -f $configstatus 2>/dev/null +echo "#!/bin/sh" >$configstatus +echo "##" >>$configstatus +echo "## $configstatus -- APACI auto-generated configuration restore script" >>$configstatus +echo "##" >>$configstatus +echo "## Use this shell script to re-run the APACI configure script for" >>$configstatus +echo "## restoring your configuration. Additional parameters can be supplied." >>$configstatus +echo "##" >>$configstatus +echo "" >>$configstatus +for var in CC OPTIM CFLAGS CFLAGS_SHLIB LDFLAGS LD_SHLIB LDFLAGS_SHLIB \ + LDFLAGS_SHLIB_EXPORT LIBS INCLUDES RANLIB; do +eval "val=\"\$$var\"" +if [ ".$val" != . ]; then +echo "$var=$val" |\ +sed -e 's:\(["$\\]\):\\\1:g' \ +-e 's:\([A-Z]*=\):\1":' \ +-e 's:$:" \\:' >>$configstatus +fi done +if [ $# -eq 0 ]; then +echo "./configure" >>$configstatus +else +echo $SEO "./configure \\" >>$configstatus +for arg +do +echo "$arg" |\ +sed -e 's:\(["$\\]\):\\\1:g' \ +-e 's:^:":' \ +-e 's:$:" \\:' >>$configstatus +done +fi +echo '$*' >>$configstatus +echo '' >>$configstatus +chmod a+x $configstatus fi -echo '$*' >>$configstatus -echo '' >>$configstatus -chmod a+x $configstatus ## ## parse argument line options
cvs commit: apache-1.3 Makefile.tmpl
rse 98/08/12 04:33:38 Modified:src CHANGES .Makefile.tmpl Log: Fix suexec installation under `make install root=xxx' situation. Revision ChangesPath 1.1022+3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1021 retrieving revision 1.1022 diff -u -r1.1021 -r1.1022 --- CHANGES 1998/08/12 10:39:09 1.1021 +++ CHANGES 1998/08/12 11:33:35 1.1022 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Fix suexec installation under `make install root=xxx' situation. + [Ralf S. Engelschall] + *) Extend the output of the -V switch to include the paths of all compiled-in configuration files, if they were overridden at compile time, for least astonishment of the user. 1.45 +4 -4 apache-1.3/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/Makefile.tmpl,v retrieving revision 1.44 retrieving revision 1.45 diff -u -r1.44 -r1.45 --- Makefile.tmpl 1998/07/25 12:43:20 1.44 +++ Makefile.tmpl 1998/08/12 11:33:37 1.45 @@ -315,10 +315,10 @@ [EMAIL PROTECTED] [ ".$(suexec)" = .1 ]; then \ echo "$(INSTALL_PROGRAM) $(TOP)/$(SRC)/support/suexec $(root)$(sbindir)/suexec"; \ $(INSTALL_PROGRAM) $(TOP)/$(SRC)/support/suexec $(root)$(sbindir)/suexec; \ - echo "chown root $(sbindir)/suexec"; \ - chown root $(sbindir)/suexec; \ - echo "chmod 4711 $(sbindir)/suexec"; \ - chmod 4711 $(sbindir)/suexec; \ + echo "chown root $(root)$(sbindir)/suexec"; \ + chown root $(root)$(sbindir)/suexec; \ + echo "chmod 4711 $(root)$(sbindir)/suexec"; \ + chmod 4711 $(root)$(sbindir)/suexec; \ echo "$(INSTALL_DATA) $(TOP)/$(SRC)/support/suexec.8 $(root)$(mandir)/man8/suexec.8"; \ $(INSTALL_DATA) $(TOP)/$(SRC)/support/suexec.8 $(root)$(mandir)/man8/suexec.8; \ fi
cvs commit: apache-1.3/src/modules/proxy Makefile.tmpl
rse 98/08/04 08:18:04 Modified:src/modules/proxy Makefile.tmpl Log: update dependency for mod_proxy Revision ChangesPath 1.24 +2 -1 apache-1.3/src/modules/proxy/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/Makefile.tmpl,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- Makefile.tmpl 1998/08/03 08:44:07 1.23 +++ Makefile.tmpl 1998/08/04 15:18:03 1.24 @@ -58,7 +58,8 @@ $(INCDIR)/alloc.h $(INCDIR)/buff.h $(INCDIR)/ap.h \ $(INCDIR)/util_uri.h $(INCDIR)/http_config.h \ $(INCDIR)/http_protocol.h $(INCDIR)/explain.h \ - $(INCDIR)/http_log.h $(INCDIR)/http_vhost.h + $(INCDIR)/http_log.h $(INCDIR)/http_vhost.h \ + $(INCDIR)/http_request.h proxy_cache.o: proxy_cache.c mod_proxy.h $(INCDIR)/httpd.h \ $(INCDIR)/ap_config.h $(INCDIR)/ap_config_auto.h \ $(OSDIR)/os.h $(INCDIR)/ap_ctype.h $(INCDIR)/hsregex.h \
cvs commit: apache-1.3 STATUS
rse 98/08/04 00:12:57 Modified:.STATUS Log: Ugly wheather here in Munich. Seems like another day for hacking... Revision ChangesPath 1.454 +0 -10 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.453 retrieving revision 1.454 diff -u -r1.453 -r1.454 --- STATUS1998/08/03 08:15:38 1.453 +++ STATUS1998/08/04 07:12:55 1.454 @@ -35,16 +35,6 @@ Message-ID: <[EMAIL PROTECTED]> Status: Ken +1 (on concept) -* "[PATCH] Link DSO modules against possible libraries from $(LIBS)" - In the configuration process we already determine the variable LDFLAGS - and LIBS. They hold -L and -l options for linking executables. We parse - these options and separate them into three classes: OBJ, PIC and DSO. - And then we re-assemble a LIBS_SHLIB variable from only the options in - classes PIC and DSO. This variable is then used on the build command for - mod_xxx.so. - Message-ID: <[EMAIL PROTECTED]> - Status: Ralf +1 - * Filenames containing whitespace characters caused problems for directives Bill Stoddard <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]>
cvs commit: apache-1.3/src CHANGES
rse 98/08/03 02:36:05 Modified:src CHANGES Log: Ops, forgot this entry when I committed the mod_proxy.c fix Revision ChangesPath 1.999 +2 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.998 retrieving revision 1.999 diff -u -r1.998 -r1.999 --- CHANGES 1998/08/03 09:14:41 1.998 +++ CHANGES 1998/08/03 09:36:03 1.999 @@ -1,5 +1,7 @@ Changes with Apache 1.3.2 + *) Clean up a warning in mod_proxy. [Ralf S. Engelschall] + *) Renamed __EMX__ (internal define of the gcc port under OS/2) to OS2 following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/ directory was renamed to src/os/os2/ for consistency.
cvs commit: apache-1.3/src/modules/proxy mod_proxy.c
rse 98/08/03 02:30:57 Modified:src/modules/proxy mod_proxy.c Log: Fix the following warning because of a missing prototype: [EMAIL PROTECTED]:/e/apache/SRC/apache-1.3/src/modules/proxy :> make gcc -c -I../../os/unix -I../../include -funsigned-char -DSTATUS -pipe -O -Wall -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline `../../apaci` mod_proxy.c mod_proxy.c: In function `proxy_handler': mod_proxy.c:305: warning: implicit declaration of function `ap_die' rm -f libproxy.a ar cr libproxy.a mod_proxy.o proxy_cache.o proxy_connect.o proxy_ftp.o proxy_http.o proxy_util.o ranlib libproxy.a Revision ChangesPath 1.57 +4 -0 apache-1.3/src/modules/proxy/mod_proxy.c Index: mod_proxy.c === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/mod_proxy.c,v retrieving revision 1.56 retrieving revision 1.57 diff -u -r1.56 -r1.57 --- mod_proxy.c 1998/07/21 15:39:42 1.56 +++ mod_proxy.c 1998/08/03 09:30:56 1.57 @@ -56,8 +56,12 @@ */ #include "mod_proxy.h" + +#define CORE_PRIVATE + #include "http_log.h" #include "http_vhost.h" +#include "http_request.h" /* Some WWW schemes and their default ports; this is basically /etc/services */ /* This will become global when the protocol abstraction comes */
cvs commit: apache-1.3/src/support htdigest.c rotatelogs.c
rse 98/08/03 02:15:35 Modified:src CHANGES Configure src/include ap_config.h httpd.h src/main alloc.c http_core.c http_log.c http_main.c http_protocol.c http_request.c util.c util_script.c src/modules/proxy proxy_cache.c src/modules/standard mod_cgi.c mod_include.c mod_log_agent.c mod_log_config.c mod_log_referer.c mod_rewrite.c mod_status.c mod_userdir.c src/support htdigest.c rotatelogs.c Removed: src/os/emx .cvsignore Makefile.tmpl os-inline.c os.c os.h util_os2.c Log: Renamed __EMX__ (internal define of the gcc port under OS/2) to OS2 following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/ directory was renamed to src/os/os2/ for consistency. Background information: 1. The src/os/os2/ stuff was created by a repository copy so we're both keep the history and sill be able to checkout older Apache releases. 2. The __EMX__ check in ap_config.h was replaced by a OS2 check while src/Configure now sets CFLAGS to "-DOS ..". Same is done for the Unix platforms, so make no difference here just for OS2. 3. The src/os/os2 is now also references from within src/Configure to reflect the change. Submitted by: Brian Havard Reviewed by: Martin Kraemer, Ralf S. Engelschall Finalized, cleaned up and applied by: Ralf S. Engelschall Revision ChangesPath 1.998 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.997 retrieving revision 1.998 diff -u -r1.997 -r1.998 --- CHANGES 1998/08/03 08:44:03 1.997 +++ CHANGES 1998/08/03 09:14:41 1.998 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) Renamed __EMX__ (internal define of the gcc port under OS/2) to OS2 + following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/ + directory was renamed to src/os/os2/ for consistency. + [Brian Havard, Ralf S. Engelschall] + *) Add new Rule SHARED_CHAIN which can be used to enable linking of DSO files (here modules) against other DSO files (here shared libraries). This is done by determining a subset of LIBS which can be safely used for 1.282 +2 -2 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.281 retrieving revision 1.282 diff -u -r1.281 -r1.282 --- Configure 1998/08/03 08:44:04 1.281 +++ Configure 1998/08/03 09:14:44 1.282 @@ -342,10 +342,10 @@ DEF_WANTHSREGEX=yes ;; *OS/2*) - OSDIR="os/emx" + OSDIR="os/os2" DEF_WANTHSREGEX=yes OS='EMX OS/2' - CFLAGS="$CFLAGS -Zbsd-signals -Zbin-files -DTCPIPV4 -g" + CFLAGS="$CFLAGS -DOS2 -Zbsd-signals -Zbin-files -DTCPIPV4 -g" LDFLAGS="$LDFLAGS -Zexe" LIBS="$LIBS -lsocket -lufc -lbsd" DBM_LIB="-lgdbm" 1.230 +2 -2 apache-1.3/src/include/ap_config.h Index: ap_config.h === RCS file: /export/home/cvs/apache-1.3/src/include/ap_config.h,v retrieving revision 1.229 retrieving revision 1.230 diff -u -r1.229 -r1.230 --- ap_config.h 1998/07/21 15:03:06 1.229 +++ ap_config.h 1998/08/03 09:14:47 1.230 @@ -655,7 +655,7 @@ #define USE_MMAP_FILES #define HAVE_SYSLOG 1 -#elif defined(__EMX__) +#elif defined(OS2) /* Defines required for EMX OS/2 port. */ #define NO_KILLPG #define NEED_STRCASECMP @@ -907,7 +907,7 @@ #endif #endif #ifdef USE_MMAP_SCOREBOARD -#if !defined(__EMX__) && !defined(WIN32) +#if !defined(OS2) && !defined(WIN32) /* This file is not needed for OS/2 */ #include #endif 1.229 +7 -7 apache-1.3/src/include/httpd.h Index: httpd.h === RCS file: /export/home/cvs/apache-1.3/src/include/httpd.h,v retrieving revision 1.228 retrieving revision 1.229 diff -u -r1.228 -r1.229 --- httpd.h 1998/07/18 23:35:40 1.228 +++ httpd.h 1998/08/03 09:14:48 1.229 @@ -79,7 +79,7 @@ * file with a relative pathname will have this added. */ #ifndef HTTPD_ROOT -#ifdef __EMX__ +#ifdef OS2 /* Set default for OS/2 file system */ #define HTTPD_ROOT "/os2httpd" #elif defined(WIN32) @@ -94,7 +94,7 @@ * directive. */ #ifndef DOCUMENT_LOCATION -#ifdef __EMX__ +#ifdef OS2 /* Set defaul
cvs commit: apache-1.3/htdocs/manual dso.html
rse 98/08/03 01:44:10 Modified:src CHANGES Configuration.tmpl Configure src/modules/proxy Makefile.tmpl src/support Makefile.tmpl apxs.pl htdocs/manual dso.html Added: src/helpers slo.sh Log: Link DSO modules against possible libraries from $(LIBS) (take 2) = Currently we have the following entry in our dso.html document: | Because DSO modules cannot be linked against other DSO-based libraries (ld | -lfoo) on all platforms (for instance a.out-based platforms usually don't | provide this functionality while ELF-based platforms do) you cannot use the | DSO mechanism for all types of modules. Or in other words, modules compiled as | DSO files are restricted to only use symbols from the Apache core, from the C | library (libc) and all other dynamic or static libraries used by the Apache | core, or from static library archives (libfoo.a) containing position | independend code. The only chance to use other code is to either make sure the | Apache core itself already contains a reference to it or loading the code | yourself via dlopen(). The important part here is: "cannot be linked on all platforms". But there _are_ platform (especially ELF-based ones) which support linking DSO files agains other DSO files. And even on platforms where this is not possible is it possible to at least link against libraries assuming they contain PIC code. So, the idea is this: In the configuration process we already determine the variable LDFLAGS and LIBS. They hold -L and -l options for linking executables. We parse these options and separate them into three classes: OBJ, PIC and DSO. And then we re-assemble a LIBS_SHLIB variable from only the options in classes PIC and DSO. This variable is then used on the build command for mod_xxx.so. Example: | $ ./configure --prefix=/tmp/apache \ | --enable-module=auth_db \ | --enable-shared=auth_db \ | --enable-rule=SHARED_CHAIN Without SHARED_CORE the mod_auth_db.so cannot be linked or at least not loaded correctly under run-time. With SHARED_CHAIN enabled it is linked against the libdb.so and all is fine (at least under this ELF-based Debian box I tried): | :> make mod_auth_db.so | gcc -c -I../../os/unix -I../../include -I/usr/include/ -DLINUX=2 | -DUSE_HSREGEX `../../apaci` -fpic -DSHARED_MODULE mod_auth_db.c && mv | mod_auth_db.o mod_auth_db.lo | ld -Bshareable -o mod_auth_db.so mod_auth_db.lo -lm -ldb | [EMAIL PROTECTED]:/e/apache/SRC/WORK/apache-1.3-libsshlib/src/modules/standard | :> ldd mod_auth_db.so | ./mod_auth_db.so => ./mod_auth_db.so | libc.so.5 => /lib/libc.so.5 | libm.so.5 => /lib/libm.so.5 | libdb.so.1 => /usr/lib/libdb.so.1 This way we provide the maximum we can provide. Sure, on some platforms the user still has no chance. But this shouldn't mean he becomes no chance on other platforms where there _is_ a chance. So this patch is a first step for more friendly and flexible DSO support. The complete mechanism is triggered by a new Rule named SHARED_CHAIN. To avoid problems this is DISABLED(!) for ALL(!) platforms currently. But when experience shows that it worked fine for users we can enable it for tested platforms per default. Revision ChangesPath 1.997 +9 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.996 retrieving revision 1.997 diff -u -r1.996 -r1.997 --- CHANGES 1998/08/03 07:34:01 1.996 +++ CHANGES 1998/08/03 08:44:03 1.997 @@ -1,5 +1,14 @@ Changes with Apache 1.3.2 + *) Add new Rule SHARED_CHAIN which can be used to enable linking of DSO + files (here modules) against other DSO files (here shared libraries). + This is done by determining a subset of LIBS which can be safely used for + linking the DSOs, i.e. PIC libs and shared libs. Currently the rule is + disabled for all platforms to avoid problems with this (experimental) + rule. But we provide it now for those people how ran into problems and + want to came out by forcing linking against DSOs. + [Ralf S. Engelschall] PR#2587 + *) Fix suEXEC start message: Has to be of `notice' level to really get printed together with the standard startup message because the `notice' level is handled special inside ap_log_error() for startup messages. 1.108 +14 -0 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-
cvs commit: apache-1.3 STATUS
rse 98/08/03 01:15:38 Modified:.STATUS Log: The heaven is gray these days in Munich, Germany. Revision ChangesPath 1.453 +0 -10 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.452 retrieving revision 1.453 diff -u -r1.452 -r1.453 --- STATUS1998/08/02 00:10:29 1.452 +++ STATUS1998/08/03 08:15:38 1.453 @@ -49,16 +49,6 @@ Bill Stoddard <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> -* PR#2483 reports that RewriteMap program still don't work under Win32 - because of a SIGSEGV. The reporter is right, ap_spawn_child_core() - calls the child function with NULL while in the child function the - file handles have to be available. I've assembled the above patch - from the reporters description/patch for testing by our Win32 folks. - (I cannot test it myself). - "Ralf S. Engelschall" <[EMAIL PROTECTED]> - Message-ID: <[EMAIL PROTECTED]> - Status: Ralf +1 - * Bill Stoddard's patch to make some structural changes to ap_call_exec to make it more readable and friendly to a couple of patches that will follow (capability to query the Win32 registry for interpreter name
cvs commit: apache-1.3/src/main http_main.c
rse 98/08/03 00:34:04 Modified:src CHANGES src/main http_main.c Log: Fix suEXEC start message: Has to be of `notice' level to really get printed together with the standard startup message because the `notice' level is handled special inside ap_log_error() for startup messages. PR: 2761, 2761, 2765 Revision ChangesPath 1.996 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.995 retrieving revision 1.996 diff -u -r1.995 -r1.996 --- CHANGES 1998/08/03 07:18:30 1.995 +++ CHANGES 1998/08/03 07:34:01 1.996 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) Fix suEXEC start message: Has to be of `notice' level to really get + printed together with the standard startup message because the `notice' + level is handled special inside ap_log_error() for startup messages. + [Ralf S. Engelschall] PR#2761 PR#2761 PR#2765 + *) Add correct `model' MIME types from RFC2077 to mime.types file. [Ralf S. Engelschall] PR#2732 1.377 +3 -3 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.376 retrieving revision 1.377 diff -u -r1.376 -r1.377 --- http_main.c 1998/08/02 04:43:17 1.376 +++ http_main.c 1998/08/03 07:34:03 1.377 @@ -4139,12 +4139,12 @@ ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_NOTICE, server_conf, "%s configured -- resuming normal operations", ap_get_server_version()); - ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_INFO, server_conf, - "Server built: %s", ap_get_server_built()); if (ap_suexec_enabled) { - ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_INFO, server_conf, + ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_NOTICE, server_conf, "suEXEC mechanism enabled (wrapper: %s)", SUEXEC_BIN); } + ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_INFO, server_conf, + "Server built: %s", ap_get_server_built()); restart_pending = shutdown_pending = 0; while (!restart_pending && !shutdown_pending) {
cvs commit: apache-1.3/conf mime.types
rse 98/08/03 00:18:35 Modified:src CHANGES conf mime.types Log: Add correct `model' MIME types from RFC2077 to mime.types file. PR: 2732 Revision ChangesPath 1.995 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.994 retrieving revision 1.995 diff -u -r1.994 -r1.995 --- CHANGES 1998/08/02 11:18:24 1.994 +++ CHANGES 1998/08/03 07:18:30 1.995 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Add correct `model' MIME types from RFC2077 to mime.types file. + [Ralf S. Engelschall] PR#2732 + *) Fixed examples in mod_rewrite.html document. [Youichirou Koga <[EMAIL PROTECTED]>, Ralf S. Engelschall] PR#2756 1.14 +5 -2 apache-1.3/conf/mime.types Index: mime.types === RCS file: /export/home/cvs/apache-1.3/conf/mime.types,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- mime.types1998/07/19 07:10:03 1.13 +++ mime.types1998/08/03 07:18:33 1.14 @@ -2,7 +2,8 @@ # given file extensions. Sending the correct MIME type to the client # is important so they know how to handle the content of the file. # Extra types can either be added here or by using an AddType directive -# in your config files. +# in your config files. For more information about MIME types +# please read RFC 2045,2046,2047,2048,2077. # MIME type Extension application/activemessage @@ -85,6 +86,9 @@ message/news message/partial message/rfc822 +model/iges igs iges +model/vrml wrl vrml +model/mesh msh mesh silo multipart/alternative multipart/appledouble multipart/digest @@ -102,4 +106,3 @@ video/x-msvideo avi video/x-sgi-moviemovie x-conference/x-cooltalk ice -x-world/x-vrml wrl vrml
cvs commit: apache-1.3/htdocs/manual/mod mod_rewrite.html
rse 98/08/02 04:18:26 Modified:src CHANGES htdocs/manual/mod mod_rewrite.html Log: Fixed examples in mod_rewrite.html document. PR: 2756 Revision ChangesPath 1.994 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.993 retrieving revision 1.994 diff -u -r1.993 -r1.994 --- CHANGES 1998/08/02 04:43:15 1.993 +++ CHANGES 1998/08/02 11:18:24 1.994 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Fixed examples in mod_rewrite.html document. + [Youichirou Koga <[EMAIL PROTECTED]>, Ralf S. Engelschall] PR#2756 + *) Allow ap_read_request errors to propagate through the normal request handling loop so that the connection can be properly closed with lingering_close, thus avoiding a potential TCP reset that would 1.34 +4 -4 apache-1.3/htdocs/manual/mod/mod_rewrite.html Index: mod_rewrite.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_rewrite.html,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- mod_rewrite.html 1998/07/25 12:16:37 1.33 +++ mod_rewrite.html 1998/08/02 11:18:26 1.34 @@ -660,7 +660,7 @@ -RewriteMap real-to-host txt:/path/to/file/map.txt +RewriteMap real-to-user txt:/path/to/file/map.txt @@ -1764,13 +1764,13 @@ We take the rewrite mapfile from above and save it under -/anywhere/map.real-to-user. Then we only have to add the +/path/to/file/map.txt. Then we only have to add the following lines to the Apache server configuration file: -RewriteLog /anywhere/rewrite.log -RewriteMap real-to-user txt:/anywhere/map.real-to-host +RewriteLog /path/to/file/rewrite.log +RewriteMap real-to-user txt:/path/to/file/map.txt RewriteRule ^/([^/]+)/~([^/]+)/(.*)$ /u/${real-to-user:$2|nobody}/$3.$1
cvs commit: apache-1.3 configure
rse 98/07/28 10:26:46 Modified:src CHANGES .configure Log: One more portability fix for APACI shadow tree support: Swap order of awk and sed in top-level configure script to avoid sed fails on some platforms (for instance SunOS 4.1.3 and NCR SysV) because of the non-newline-termined output of Awk. PR: 2729 Revision ChangesPath 1.992 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.991 retrieving revision 1.992 diff -u -r1.991 -r1.992 --- CHANGES 1998/07/28 17:07:07 1.991 +++ CHANGES 1998/07/28 17:26:43 1.992 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) One more portability fix for APACI shadow tree support: Swap order of awk + and sed in top-level configure script to avoid sed fails on some + platforms (for instance SunOS 4.1.3 and NCR SysV) because of the + non-newline-termined output of Awk. [Ralf S. Engelschall] PR#2729 + *) PORT: NEC EWS4800 support. [MATSUURA Takanori <[EMAIL PROTECTED]>] 1.42 +1 -1 apache-1.3/configure Index: configure === RCS file: /export/home/cvs/apache-1.3/configure,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- configure 1998/07/27 14:39:22 1.41 +++ configure 1998/07/28 17:26:45 1.42 @@ -332,7 +332,7 @@ ;; --shadow) # determine GNU platform triple -gnutriple=`$aux/GuessOS | $AWK '{ printf("%s",$1); }' | sed -e 's:/:-:g'` +gnutriple=`$aux/GuessOS | sed -e 's:/:-:g' | $AWK '{ printf("%s",$1); }'` # create Makefile wrapper (the first time only) if [ ".`ls $top/src.* 2>/dev/null`" = . ]; then if [ .$quiet = .no ]; then
cvs commit: apache-1.3/src/main alloc.c
rse 98/07/27 07:58:20 Modified:src CHANGES src/main alloc.c Log: Fix Win32 part of ap_spawn_child() by providing a reasonable child_info structure instead of just NULL. This fixes at least the RewriteMap programs under Win32. Submitted by: Marco De Michele <[EMAIL PROTECTED]> Reviewed by: Ralf S. Engelschall PR: 2483 Revision ChangesPath 1.989 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.988 retrieving revision 1.989 diff -u -r1.988 -r1.989 --- CHANGES 1998/07/27 14:39:20 1.988 +++ CHANGES 1998/07/27 14:58:17 1.989 @@ -1,5 +1,9 @@ Changes with Apache 1.3.2 + *) Fix Win32 part of ap_spawn_child() by providing a reasonable child_info + structure instead of just NULL. This fixes at least the RewriteMap + programs under Win32. [Marco De Michele <[EMAIL PROTECTED]>] PR#2483 + *) Add workaround to top-level `configure' script for brain dead `echo' commands which interpet escape sequences per default. [Ralf S. Engelschall] PR#2654 1.97 +6 -1 apache-1.3/src/main/alloc.c Index: alloc.c === RCS file: /export/home/cvs/apache-1.3/src/main/alloc.c,v retrieving revision 1.96 retrieving revision 1.97 diff -u -r1.96 -r1.97 --- alloc.c 1998/06/13 15:22:52 1.96 +++ alloc.c 1998/07/27 14:58:19 1.97 @@ -1850,6 +1850,7 @@ HANDLE thread_handle; int hStdIn, hStdOut, hStdErr; int old_priority; + child_info info; (void) ap_acquire_mutex(spawn_mutex); thread_handle = GetCurrentThread(); /* doesn't need to be closed */ @@ -1876,7 +1877,11 @@ close(err_fds[1]); } - pid = (*func) (data, NULL); + info.hPipeInputRead = GetStdHandle(STD_INPUT_HANDLE); + info.hPipeOutputWrite = GetStdHandle(STD_OUTPUT_HANDLE); + info.hPipeErrorWrite = GetStdHandle(STD_ERROR_HANDLE); + + pid = (*func) (data, &info); if (pid == -1) pid = 0; /* map Win32 error code onto Unix default */ if (!pid) {
cvs commit: apache-1.3 configure
rse 98/07/27 07:39:23 Modified:src CHANGES .configure Log: Add workaround to top-level `configure' script for brain dead `echo' commands which interpet escape sequences per default. PR: 2654 Revision ChangesPath 1.988 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.987 retrieving revision 1.988 diff -u -r1.987 -r1.988 --- CHANGES 1998/07/25 12:43:18 1.987 +++ CHANGES 1998/07/27 14:39:20 1.988 @@ -1,5 +1,9 @@ Changes with Apache 1.3.2 + *) Add workaround to top-level `configure' script for brain dead + `echo' commands which interpet escape sequences per default. + [Ralf S. Engelschall] PR#2654 + *) Make sure that the path to the Perl interpreter is correctly adjusted under `make install' also for the printenv CGI script. [Ralf S. Engelschall] PR#2595 1.41 +32 -9 apache-1.3/configure Index: configure === RCS file: /export/home/cvs/apache-1.3/configure,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- configure 1998/07/25 10:52:50 1.40 +++ configure 1998/07/27 14:39:22 1.41 @@ -124,6 +124,29 @@ fi ## +## look for deadly broken echo commands which interpret escape +## sequences `\XX' *per default*. For those we first try the -E option +## and if it then is still broken we give a warning message. +## If it works set the `Safe Echo Option' (SEO) variable. +## + +SEO='' # CHANGE THIS VARIABLE HERE IF YOU HAVE PROBLEMS WITH ECHO! +bytes=`echo $SEO '\1' | wc -c | awk '{ printf("%s", $1); }'` +if [ ".$bytes" != .3 ]; then +bytes=`echo -E '\1' | wc -c | awk '{ printf("%s", $1); }'` +if [ ".$bytes" != .3 ]; then +echo " + Warning: Your 'echo' command is slightly broken." +echo " + It interprets escape sequences per default. We already" +echo " + tried 'echo -E' but had no real success. If errors occur" +echo " + please set the SEO variable in 'configure' manually to" +echo " + the required 'echo' options, i.e. those which force your" +echo " + 'echo' to not interpret escape sequences per default." +else +SEO='-E' +fi +fi + +## ## look for the best Awk we can find because some ## standard Awks are really braindead and cause ## problems for our scripts under some platforms. @@ -266,7 +289,7 @@ if [ $# -eq 0 ]; then echo "./configure" >>$configstatus else -echo "./configure \\" >>$configstatus +echo $SEO "./configure \\" >>$configstatus for arg do echo "$arg" |\ @@ -968,10 +991,10 @@ if [ ".$val" != . ]; then case $var in CFLAGS|LDFLAGS|LIBS|INCLUDES|DEPS) -echo "s%^#*\\(EXTRA_$var=\\).*%\\1$val%g" >>$sedsubst +echo $SEO "s%^#*\\(EXTRA_$var=\\).*%\\1$val%g" >>$sedsubst ;; *) -echo "s%^#*\\($var=\\).*%\\1$val%g" >>$sedsubst +echo $SEO "s%^#*\\($var=\\).*%\\1$val%g" >>$sedsubst ;; esac eval "$var=\"\"; export $var" @@ -984,7 +1007,7 @@ for rule in $rules; do name="`echo $rule | tr "a-z" "A-Z"`" eval "val=\$rule_$rule" -echo "s%^\\(Rule $name=\\).*%\\1$val%g" >>$sedsubst +echo $SEO "s%^\\(Rule $name=\\).*%\\1$val%g" >>$sedsubst if [ $verbose = yes ]; then echo " + Rule $name=$val" fi @@ -1020,17 +1043,17 @@ for module in $modules; do eval "add=\$module_$module" if [ $add = yes ]; then -echo "s%^.*\\(AddModule.*$module\\..*\\)%\\1%g" >>$sedsubst -echo "s%^.*\\(SharedModule.*$module\\..*\\)%\\1%g" >>$sedsubst +echo $SEO "s%^.*\\(AddModule.*$module\\..*\\)%\\1%g" >>$sedsubst +echo $SEO "s%^.*\\(SharedModule.*$module\\..*\\)%\\1%g" >>$sedsubst m="yes [static]" else -echo "s%^.*\\(AddModule.*$module\\..*\\)%# \\1%g" >>$sedsubst -echo "s%^.*\\(SharedModule.*$module\\..*\\)%# \\1%g" >>$sedsubst +echo $SEO "s%^.*\\(AddModule.*$module\\..*\\)%# \\1%g" >>$sedsubst +echo $SEO "s%^.*\\(SharedModule.*$module\\..*\\)%# \\1%g" >>$sedsubst m=no fi eval "share=\$shared_$module" if [ $share = yes ]; then -echo "s%^\\(.*\\)AddModule\\(.*$module\\.\\)[oa]\\(.*\\)%\\1SharedModule\\2so\\3%g" >>$sedsubst +echo $SEO "s%^\\(.*\\)AddModule\\(.*$module\\.\\)[oa]\\(.*\\)%\\1SharedModule\\2so\\3%g" >>$sedsubst m="yes [shared]" fi if [ $verbose = yes ]; then
cvs commit: apache-1.3 STATUS
rse 98/07/25 06:33:52 Modified:.STATUS Log: Don't let us forgot a problem with DSO + NetBSD. Revision ChangesPath 1.450 +20 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.449 retrieving revision 1.450 diff -u -r1.449 -r1.450 --- STATUS1998/07/25 08:26:14 1.449 +++ STATUS1998/07/25 13:33:51 1.450 @@ -166,6 +166,26 @@ Open issues: +* Underscores on symbols in DSO situation is broken for NetBSD: + Here is a private conversation between me (rse) and Charles Hannum of + the NetBSD project: + + From: "Charles M. Hannum" <[EMAIL PROTECTED]> + > We have a bug report at the Apache BugDB (see + > http://bugs.apache.org/private/index/full/2462) where a user says + > under a particular NetBSD platform (NetBSD/pmax 1.3.2) the symbols on + > dlsym() don't need an underscore. In FreeBSD world we always had the + > underscore, + > [...] + This is less an issue of OS, and more an issue of a.out vs. ELF. The + underscores are always used for a.out, and are never used for ELF. + Therefore, on any platform where we use ELF (that would be Alpha, MIPS, + PowerPC and UltraSPARC currently, although there are plans to eventually + switch on other platforms), the underscores should not be added, and on + all other platforms they should be. + You can differentiate by comparing the output of `uname -m' with any + of: alpha bebox macppc newsmips ofppc pica pmax sparc64. + * How should an Apache binary release tarball look? NOTE: This should be resolved before 1.3.1 !!
cvs commit: apache-1.3 Makefile.tmpl
rse 98/07/25 05:43:21 Modified:src CHANGES .Makefile.tmpl Log: Make sure that the path to the Perl interpreter is correctly adjusted under `make install' also for the printenv CGI script. NOTICE: I still used INSTALL_DATA instead of INSTALL_SCRIPT because some of us still thing we should install even these trivial shell scripts without execute permissions. Even when we also have CGI's disabled in the default config. What's the latest state? Should we change INSTALL_DATA to INSTALL_SCRIPT or is double-paranoia really necessary? PR: 2595 Revision ChangesPath 1.987 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.986 retrieving revision 1.987 diff -u -r1.986 -r1.987 --- CHANGES 1998/07/25 12:16:35 1.986 +++ CHANGES 1998/07/25 12:43:18 1.987 @@ -1,4 +1,8 @@ Changes with Apache 1.3.2 + + *) Make sure that the path to the Perl interpreter is correctly + adjusted under `make install' also for the printenv CGI script. + [Ralf S. Engelschall] PR#2595 *) Update the mod_rewrite.html document to correctly reflect the situation of the `proxy' (`[P]') feature. [Ralf S. Engelschall] PR#2679 1.44 +7 -5 apache-1.3/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/Makefile.tmpl,v retrieving revision 1.43 retrieving revision 1.44 diff -u -r1.43 -r1.44 --- Makefile.tmpl 1998/07/25 11:56:30 1.43 +++ Makefile.tmpl 1998/07/25 12:43:20 1.44 @@ -350,11 +350,13 @@ [EMAIL PROTECTED] [ -f $(root)$(datadir)/cgi-bin/printenv ]; then \ echo "[PRESERVING EXISTING DATA SUBDIR: $(root)$(datadir)/cgi-bin/]"; \ else \ - echo "Copying tree $(TOP)/cgi-bin/ -> $(root)$(datadir)/cgi-bin/"; \ - (cd $(TOP)/cgi-bin/ && $(TAR) cf - *) |\ - (cd $(root)$(datadir)/cgi-bin/ && $(TAR) xf -); \ - find $(root)$(datadir)/cgi-bin/ -type d -exec chmod a+rx {} \; ; \ - find $(root)$(datadir)/cgi-bin/ -type f -exec chmod a+r {} \; ; \ + for script in printenv test-cgi; do \ + cat $(TOP)/cgi-bin/$${script} |\ + sed -e 's;^#!/.*perl;#!$(PERL);' \ + > $(TOP)/$(SRC)/.apaci.install.tmp; \ + echo "$(INSTALL_DATA) $(TOP)/conf/$${script}[*] $(root)$(datadir)/cgi-bin/$${script}"; \ + $(INSTALL_DATA) $(TOP)/$(SRC)/.apaci.install.tmp $(root)$(datadir)/cgi-bin/$${script}; \ + done; \ fi @echo "Copying tree $(TOP)/icons/ -> $(root)$(datadir)/icons/"; \ (cd $(TOP)/icons/ && $(TAR) cf - *) |\
cvs commit: apache-1.3/htdocs/manual/mod mod_rewrite.html
rse 98/07/25 05:16:38 Modified:src CHANGES htdocs/manual/mod mod_rewrite.html Log: Update the mod_rewrite.html document to correctly reflect the situation of the `proxy' (`[P]') feature. PR: 2679 Revision ChangesPath 1.986 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.985 retrieving revision 1.986 diff -u -r1.985 -r1.986 --- CHANGES 1998/07/25 11:56:28 1.985 +++ CHANGES 1998/07/25 12:16:35 1.986 @@ -1,4 +1,7 @@ Changes with Apache 1.3.2 + + *) Update the mod_rewrite.html document to correctly reflect the situation + of the `proxy' (`[P]') feature. [Ralf S. Engelschall] PR#2679 *) Fix `install-includes' sub-target of `install' target in top-level Makefile.tmpl: The umask+cp approach didn't work as expected (especially 1.33 +13 -11apache-1.3/htdocs/manual/mod/mod_rewrite.html Index: mod_rewrite.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_rewrite.html,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- mod_rewrite.html 1998/06/22 09:48:38 1.32 +++ mod_rewrite.html 1998/07/25 12:16:37 1.33 @@ -1493,18 +1493,20 @@ 'proxy|P' (force proxy) This flag forces the substitution part to be internally forced as a proxy request and immediately (i.e. rewriting rule processing stops here) put -through the proxy module. You have to make sure that the substitution -string is a valid URI (e.g. typically http://) which can -be handled by the Apache proxy module. If not you get an error from -the proxy module. Use this flag to achieve a more powerful implementation -of the mod_proxy directive ProxyPass, to map -some remote stuff into the namespace of the local server. +through the proxy module. You have to make +sure that the substitution string is a valid URI (e.g. typically starting +with http://hostname) which can be handled by the +Apache proxy module. If not you get an error from the proxy module. Use +this flag to achieve a more powerful implementation of the ProxyPass directive, to map some +remote stuff into the namespace of the local server. -Notice: You really have to put ProxyRequests On into your -server configuration to prevent proxy requests from leading to core-dumps -inside the Apache kernel. If you have not compiled in the proxy module, -then there is no core-dump problem, because mod_rewrite checks for -existence of the proxy module and if lost forbids proxy URLs. +Notice: To use this functionality make sure you have the proxy module +compiled into your Apache server program. If you don't know please check +whether mod_proxy.c is part of the ``httpd -l'' +output. If yes, this functionality is available to mod_rewrite. If not, +then you first have to rebuild the ``httpd'' program with +mod_proxy enabled. 'last|L' (last rule) Stop the rewriting process here and
cvs commit: apache-1.3 Makefile.tmpl
rse 98/07/25 04:56:31 Modified:src CHANGES .Makefile.tmpl Log: Fix `install-includes' sub-target of `install' target in top-level Makefile.tmpl: The umask+cp approach didn't work as expected (especially for users which extracted the distribution under 'umask 077'), so replace it by an explicit cp+chmod approach. Submitted by: Richard Lloyd, Curt Sampson Reviewed and fixed by: Ralf S. Engelschall PR: 2656, 2626 Revision ChangesPath 1.985 +6 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.984 retrieving revision 1.985 diff -u -r1.984 -r1.985 --- CHANGES 1998/07/25 11:30:17 1.984 +++ CHANGES 1998/07/25 11:56:28 1.985 @@ -1,4 +1,10 @@ Changes with Apache 1.3.2 + + *) Fix `install-includes' sub-target of `install' target in top-level + Makefile.tmpl: The umask+cp approach didn't work as expected (especially + for users which extracted the distribution under 'umask 077'), so replace + it by an explicit cp+chmod approach. + [Richard Lloyd, Curt Sampson, Ralf S. Engelschall] PR#2656 PR#2626 *) Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same behavior and to cleanup correctly even under enabled SHARED_CORE rule. 1.43 +4 -4 apache-1.3/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/Makefile.tmpl,v retrieving revision 1.42 retrieving revision 1.43 diff -u -r1.42 -r1.43 --- Makefile.tmpl 1998/07/15 17:03:25 1.42 +++ Makefile.tmpl 1998/07/25 11:56:30 1.43 @@ -80,7 +80,6 @@ LN = ln RM = rm -f TAR = tar -UMASK = umask MKDIR = $(TOP)/$(AUX)/mkdir.sh INSTALL = $(TOP)/$(AUX)/install.sh -c INSTALL_PROGRAM = $(INSTALL) -s -m 755 @@ -328,10 +327,11 @@ # install the Apache C header files install-include: @echo "===> [include: Installing Apache C header files]" - $(UMASK) 022; $(CP) $(TOP)/$(SRC)/include/*.h $(root)$(includedir)/ + $(CP) $(TOP)/$(SRC)/include/*.h $(root)$(includedir)/ @osdir=`grep '^OSDIR=' $(TOP)/$(SRC)/Makefile.config | sed -e 's:^OSDIR=.*/os:os:'`; \ - echo "$(UMASK) 022; $(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(root)$(includedir)/"; \ - $(UMASK) 022; $(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(root)$(includedir)/ + echo "$(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(root)$(includedir)/"; \ + $(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(root)$(includedir)/ + chmod 644 $(root)$(includedir)/*.h @echo "<=== [include]" # create an initial document root containing the Apache manual,
cvs commit: apache-1.3/src CHANGES Makefile.tmpl
rse 98/07/25 04:30:19 Modified:src CHANGES Makefile.tmpl Log: Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same behavior and to cleanup correctly even under enabled SHARED_CORE rule. Revision ChangesPath 1.984 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.983 retrieving revision 1.984 diff -u -r1.983 -r1.984 --- CHANGES 1998/07/25 11:25:02 1.983 +++ CHANGES 1998/07/25 11:30:17 1.984 @@ -1,4 +1,8 @@ Changes with Apache 1.3.2 + + *) Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same + behavior and to cleanup correctly even under enabled SHARED_CORE rule. + [Ralf S. Engelschall] *) Use a more straight forward and thus less problematic Sed command in src/helper/mkdir.sh script. [Ralf S. Engelschall] 1.103 +2 -2 apache-1.3/src/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Makefile.tmpl,v retrieving revision 1.102 retrieving revision 1.103 diff -u -r1.102 -r1.103 --- Makefile.tmpl 1998/07/20 16:27:58 1.102 +++ Makefile.tmpl 1998/07/25 11:30:18 1.103 @@ -66,7 +66,7 @@ echo "<=== $(SDP)support" clean: - rm -f $(TARGET) libhttpd.* *.o + -rm -f $(TARGET) libhttpd.* *.o @for i in $(SUBDIRS); do \ echo "===> $(SDP)$$i"; \ ( cd $$i && $(MAKE) $(MFLAGS_STATIC) SDP='$(SDP)' $@ ) || exit 1; \ @@ -74,7 +74,7 @@ done distclean: - -rm -f $(TARGET) *.o + -rm -f $(TARGET) libhttpd.* *.o @for i in $(SUBDIRS); do \ echo "===> $(SDP)$$i"; \ ( cd $$i && $(MAKE) $(MFLAGS_STATIC) SDP='$(SDP)' $@ ) || exit 1; \
cvs commit: apache-1.3/src/helpers mkdir.sh
rse 98/07/25 04:25:05 Modified:src CHANGES src/helpers mkdir.sh Log: Use a more straight forward and thus less problematic (replace -n&p by -e) Sed command in src/helper/mkdir.sh script. Revision ChangesPath 1.983 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.982 retrieving revision 1.983 diff -u -r1.982 -r1.983 --- CHANGES 1998/07/25 10:52:46 1.982 +++ CHANGES 1998/07/25 11:25:02 1.983 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Use a more straight forward and thus less problematic Sed command in + src/helper/mkdir.sh script. [Ralf S. Engelschall] + *) Make sure the `configure' scripts doesn't fail when trying to guess the domainname of the machine and there are multiple `domainname' and `search' entries in /etc/resolv.conf. 1.3 +1 -1 apache-1.3/src/helpers/mkdir.sh Index: mkdir.sh === RCS file: /export/home/cvs/apache-1.3/src/helpers/mkdir.sh,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mkdir.sh 1998/04/25 19:27:04 1.2 +++ mkdir.sh 1998/07/25 11:25:04 1.3 @@ -12,7 +12,7 @@ errstatus=0 for file in ${1+"$@"} ; do set fnord `echo ":$file" |\ - sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + sed -e 's/^:\//%/' -e 's/^://' -e 's/\// /g' -e 's/^%/\//'` shift pathcomp= for d in ${1+"$@"}; do
cvs commit: apache-1.3 configure
rse 98/07/25 03:52:52 Modified:src CHANGES .configure Log: Make sure the `configure' scripts doesn't fail when trying to guess the domainname of the machine and there are multiple `domainname' and `search' entries in /etc/resolv.conf. PR: 2710 Revision ChangesPath 1.982 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.981 retrieving revision 1.982 diff -u -r1.981 -r1.982 --- CHANGES 1998/07/25 08:13:14 1.981 +++ CHANGES 1998/07/25 10:52:46 1.982 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) Make sure the `configure' scripts doesn't fail when trying to guess the + domainname of the machine and there are multiple `domainname' and + `search' entries in /etc/resolv.conf. + [Ralf S. Engelschall] PR#2710 + *) Add note about the SHARED_CORE requirement on some platforms also to the INSTALL file because a lot of users don't read htdocs/manual/dso.html first. [Ralf S. Engelschall] PR#2701 1.40 +2 -2 apache-1.3/configure Index: configure === RCS file: /export/home/cvs/apache-1.3/configure,v retrieving revision 1.39 retrieving revision 1.40 diff -u -r1.39 -r1.40 --- configure 1998/07/12 09:25:46 1.39 +++ configure 1998/07/25 10:52:50 1.40 @@ -821,12 +821,12 @@ hostname="`echo $hostname | sed -e 's/\..*//'`" domainname=""; if [ -f /etc/resolv.conf ]; then -domainname="`egrep '^[ ]*domain' /etc/resolv.conf |\ +domainname="`egrep '^[ ]*domain' /etc/resolv.conf | head -1 |\ sed -e 's/.*domain//' -e 's/^[ ]*//' \ -e 's/^ *//' -e 's/^*//' \ -e 's/^\.//' -e 's/^/./'`" if [ ".$domainname" = . ]; then -domainname="`egrep '^[ ]*search' /etc/resolv.conf |\ +domainname="`egrep '^[ ]*search' /etc/resolv.conf | head -1 |\ sed -e 's/.*search//' -e 's/^[ ]*//' \ -e 's/^ *//' -e 's/^*//' \ -e 's/ .*//' -e 's/^\.//' -e 's/^/./'`"
cvs commit: apache-1.3 STATUS
rse 98/07/25 01:26:15 Modified:.STATUS Log: Sunny Saturday morning... Revision ChangesPath 1.449 +4 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.448 retrieving revision 1.449 diff -u -r1.448 -r1.449 --- STATUS1998/07/22 13:25:53 1.448 +++ STATUS1998/07/25 08:26:14 1.449 @@ -4,7 +4,7 @@ 1.3.2: In development. -1.3.1: Tagged and rolled on July 19. Still not announced and released. +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. @@ -22,6 +22,9 @@ * Need a document explaining mod_rewrite/"UseCanonicalName off" based virtualhosting. (If it exists already I can't find it easily.) + => It still doesn't exists but I've already assembled the relevant + information and config snippets. We just have to write a vhost-xxx.html + document out of it. -- rse Available Patches:
cvs commit: apache-1.3 INSTALL
rse 98/07/25 01:13:17 Modified:src CHANGES .INSTALL Log: Add note about the SHARED_CORE requirement on some platforms also to the INSTALL file because a lot of users don't read htdocs/manual/dso.html first. PR: 2701 Revision ChangesPath 1.981 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.980 retrieving revision 1.981 diff -u -r1.980 -r1.981 --- CHANGES 1998/07/23 17:31:24 1.980 +++ CHANGES 1998/07/25 08:13:14 1.981 @@ -1,5 +1,9 @@ Changes with Apache 1.3.2 + *) Add note about the SHARED_CORE requirement on some platforms also to the + INSTALL file because a lot of users don't read htdocs/manual/dso.html + first. [Ralf S. Engelschall] PR#2701 + *) Fix document "hyperlink" for dso.html in src/Configuration.tmpl [Knut A.Syed <[EMAIL PROTECTED]>] PR#2674 1.38 +6 -0 apache-1.3/INSTALL Index: INSTALL === RCS file: /export/home/cvs/apache-1.3/INSTALL,v retrieving revision 1.37 retrieving revision 1.38 diff -u -r1.37 -r1.38 --- INSTALL 1998/07/22 13:20:50 1.37 +++ INSTALL 1998/07/25 08:13:16 1.38 @@ -333,6 +333,12 @@ distributed modules are build as shared objects. This can be achieved by explicitly using --enable-module=so. + Note 5: Some platforms require --enable-rule=SHARED_CORE for + the DSO mechanism to work, i.e. when you want to use + --enable-shared for some modules on these platforms you also + have to enable the SHARED_CORE rule. For more details please + read the document `htdocs/manual/dso.html'. + Use the --with-perl=FILE option to select a particular Perl interpreter executable to be used with Apache. Per default APACI tries to find it automatically. But if multiple Perl instances exist on your system you
cvs commit: apache-1.3/src CHANGES
rse 98/07/23 10:31:27 Modified:src CHANGES Log: Do some litte adjustments to let Marc agree to it ;-) Revision ChangesPath 1.980 +4 -3 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.979 retrieving revision 1.980 diff -u -r1.979 -r1.980 --- CHANGES 1998/07/23 13:57:50 1.979 +++ CHANGES 1998/07/23 17:31:24 1.980 @@ -1,10 +1,11 @@ Changes with Apache 1.3.2 *) Fix document "hyperlink" for dso.html in src/Configuration.tmpl - [Ralf S. Engelschall] PR#2674 + [Knut A.Syed <[EMAIL PROTECTED]>] PR#2674 - *) Modify mod_rewrite to update the Vary response field if it Does - Anything based upon request fields. [Ken Coar] PR#1644 + *) Modify mod_rewrite to update the Vary response field if the URL rewriting + engine does any manipulations or decisions based upon request fields. + [Ken Coar] PR#1644 *) Document the special APACI behavior for installation paths where ``/apache'' is appended to paths under some (well defined, of course)
cvs commit: apache-1.3/src CHANGES Configuration.tmpl
rse 98/07/23 06:57:52 Modified:src CHANGES Configuration.tmpl Log: Fix document name for dso.html Revision ChangesPath 1.979 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.978 retrieving revision 1.979 diff -u -r1.978 -r1.979 --- CHANGES 1998/07/23 13:45:42 1.978 +++ CHANGES 1998/07/23 13:57:50 1.979 @@ -1,5 +1,8 @@ Changes with Apache 1.3.2 + *) Fix document "hyperlink" for dso.html in src/Configuration.tmpl + [Ralf S. Engelschall] PR#2674 + *) Modify mod_rewrite to update the Vary response field if it Does Anything based upon request fields. [Ken Coar] PR#1644 1.107 +1 -2 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.106 retrieving revision 1.107 diff -u -r1.106 -r1.107 --- Configuration.tmpl1998/07/11 16:44:33 1.106 +++ Configuration.tmpl1998/07/23 13:57:51 1.107 @@ -72,8 +72,7 @@ # knowledge on how to compile these DSO files because this is # heavily platform-dependent. The current state of supported and # explicitly unsupported platforms can be found in the file -# "htdocs/manual/sharedobjects.html", under -# "Supported Platforms". +# "htdocs/manual/dso.html", under "Supported Platforms". # # For other platforms where you want to use the DSO mechanism you # first have to make sure it supports the pragmatic dlopen()
cvs commit: apache-1.3 STATUS
rse 98/07/22 06:25:54 Modified:.STATUS Log: update Revision ChangesPath 1.448 +3 -3 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.447 retrieving revision 1.448 diff -u -r1.447 -r1.448 --- STATUS1998/07/22 04:00:46 1.447 +++ STATUS1998/07/22 13:25:53 1.448 @@ -2,9 +2,9 @@ Release: -1.3.1: In development. Hopeful for rolling tarball on Monday - evening, with release a day or two later. This depends on -Win32 working and being ready. +1.3.2: In development. + +1.3.1: Tagged and rolled on July 19. Still not announced and released. 1.3.0: Tagged and rolled on June 1. Announced and Released on the 6th.
cvs commit: apache-1.3/src CHANGES
rse 98/07/22 06:20:53 Modified:.INSTALL src CHANGES Log: Document the special APACI behavior for installation paths where ``/apache'' is appended to paths under some (well defined, of course) situations to prevent pollution of system locations with Apache files. PR: 2660 Revision ChangesPath 1.37 +17 -0 apache-1.3/INSTALL Index: INSTALL === RCS file: /export/home/cvs/apache-1.3/INSTALL,v retrieving revision 1.36 retrieving revision 1.37 diff -u -r1.36 -r1.37 --- INSTALL 1998/07/08 11:09:34 1.36 +++ INSTALL 1998/07/22 13:20:50 1.37 @@ -196,6 +196,23 @@ localstatedir=PREFIX/var, runtimedir=PREFIX/var/run, logfiledir=PREFIX/var/log and proxycachedir=PREFIX/var/proxy. + Note: To reduce the pollution of shared installation locations + (like /usr/local/ or /etc) with Apache files to a minimum the + string ``/apache'' is automatically appended to 'libexecdir', + 'sysconfdir', 'datadir', 'localstatedir' and 'includedir' if + (and only if) the following points apply for each path + individually: + + 1. the path doesn't already contain the word ``apache'' + 2. the path was not directly customized by the user + + Keep in mind that per default these paths are derived from + 'prefix' and 'exec-prefix', so usually its only a matter + whether these paths contain ``apache'' or not. Although the + defaults were defined with experience in mind you always should + make sure the paths fit your situation by checking the finally + chosen paths via the --layout option. + Use the --compat option to install Apache into a installation tree which has a similar layout than the one used with Apache 1.2. 1.977 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.976 retrieving revision 1.977 diff -u -r1.976 -r1.977 --- CHANGES 1998/07/22 05:48:19 1.976 +++ CHANGES 1998/07/22 13:20:51 1.977 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) Document the special APACI behavior for installation paths where + ``/apache'' is appended to paths under some (well defined, of course) + situations to prevent pollution of system locations with Apache files. + [Ralf S. Engelschall] PR#2660 + *) Fixed problem with buffered response message not being sent for the read_request error conditions of URI-too-long (414) and malformed header fields (400). [Roy Fielding] PR#2646
cvs commit: apache-devsite how-to-release.html
rse 98/07/21 03:28:45 Modified:.how-to-release.html Log: Make sure the V.R.P triple for SHARED_CORE is correct when releasing. Revision ChangesPath 1.42 +7 -1 apache-devsite/how-to-release.html Index: how-to-release.html === RCS file: /export/home/cvs/apache-devsite/how-to-release.html,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- how-to-release.html 1998/06/07 01:49:58 1.41 +++ how-to-release.html 1998/07/21 10:28:43 1.42 @@ -135,9 +135,15 @@ ``1XXYYZZ'' to ``1XXYY99''. The format is something like printf("%d%02d%02d%02d", major, minor, bugfix, - betaseq). + betaseq). Additionally make sure the Configure scripts version + knowledge for the SHARED_CORE reflects the correct + version.revision.patchlevel triple. Look for the line ``V=1 R=3 + P=2'' inside src/Configure and adjust it accordingly. + $ vi src/include/httpd.h $ cvs commit src/include/httpd.h + $ vi src/Configure + $ cvs commit src/Configure If the release is going from beta to non-beta, or non-beta to a beta, also update the Windows registry key release. See
cvs commit: apache-1.3/src CHANGES Configure
rse 98/07/21 03:20:27 Modified:src CHANGES Configure Log: Fix SHARED_CORE rule: The CFLAGS_SHLIB variable is no longer doubled (compilers complained) and the .so.V.R.P filename extension was adjusted to correctly reflect the 1.3.2 version. PR: 2644 Revision ChangesPath 1.974 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.973 retrieving revision 1.974 diff -u -r1.973 -r1.974 --- CHANGES 1998/07/20 16:40:37 1.973 +++ CHANGES 1998/07/21 10:20:24 1.974 @@ -1,5 +1,10 @@ Changes with Apache 1.3.2 + *) Fix SHARED_CORE rule: The CFLAGS_SHLIB variable is no longer doubled + (compilers complained) and the .so.V.R.P filename extension was adjusted + to correctly reflect the 1.3.2 version. + [Ralf S. Engelschall] PR#2644 + *) SECURITY: Plug "..." and other canonicalization holes under OS/2. [Brian Havard] 1.280 +21 -21apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.279 retrieving revision 1.280 diff -u -r1.279 -r1.280 --- Configure 1998/07/18 10:51:52 1.279 +++ Configure 1998/07/21 10:20:25 1.280 @@ -1057,25 +1057,6 @@ fi -## Set the value of the shared libary flags, if they aren't explicitly -## set in the configuration file -## -if [ "x$using_shlib" = "x1" ] ; then -if [ "x$TCFLAGS_SHLIB" = "x" ]; then -echo "CFLAGS_SHLIB=$CFLAGS_SHLIB -DSHARED_MODULE" >> Makefile.config -fi -if [ "x$TLD_SHLIB" = "x" ]; then -echo "LD_SHLIB=$LD_SHLIB" >> Makefile.config -fi -if [ "x$TLDFLAGS_SHLIB" = "x" ]; then -echo "LDFLAGS_SHLIB=$LDFLAGS_SHLIB" >> Makefile.config -fi -if [ "x$TLDFLAGS_SHLIB_EXPORT" = "x" ]; then -echo "LDFLAGS_SHLIB_EXPORT=$LDFLAGS_SHLIB_EXPORT" >> Makefile.config -fi -fi - - ## Now we do some OS specific adjustments... for some OSs, we need ## to adjust CFLAGS and/or OPTIM depending on which compiler we ## are going to use. This is easy, since this can be gleamed from @@ -1401,7 +1382,7 @@ RULE_SHARED_CORE=$DEF_SHARED_CORE fi if [ ".$RULE_SHARED_CORE" = .yes ]; then -echo " + enabling generation of Apache core as DSO" +echo " + enabling generation of Apache core as DSO" #shuffle compiler flags from shlib variant to standard CFLAGS="$CFLAGS $CFLAGS_SHLIB" CFLAGS_SHLIB="" @@ -1410,7 +1391,7 @@ #select the special subtarget for shared core generation SUBTARGET=target_shared #determine additional suffixes for libhttpd.so -V=1 R=3 P=0 +V=1 R=3 P=2 if [ ".$SHLIB_SUFFIX_DEPTH" = .0 ]; then SHLIB_SUFFIX_LIST="" fi @@ -1426,6 +1407,25 @@ if [ ".$SHLIB_SUFFIX_DEPTH" = .all ]; then SHLIB_SUFFIX_LIST="$V $V.$R $V.$R.$P" fi +fi +fi + + +## Set the value of the shared libary flags, if they aren't explicitly +## set in the configuration file +## +if [ "x$using_shlib" = "x1" ] ; then +if [ "x$TCFLAGS_SHLIB" = "x" ]; then +echo "CFLAGS_SHLIB=$CFLAGS_SHLIB -DSHARED_MODULE" >> Makefile.config +fi +if [ "x$TLD_SHLIB" = "x" ]; then +echo "LD_SHLIB=$LD_SHLIB" >> Makefile.config +fi +if [ "x$TLDFLAGS_SHLIB" = "x" ]; then +echo "LDFLAGS_SHLIB=$LDFLAGS_SHLIB" >> Makefile.config +fi +if [ "x$TLDFLAGS_SHLIB_EXPORT" = "x" ]; then +echo "LDFLAGS_SHLIB_EXPORT=$LDFLAGS_SHLIB_EXPORT" >> Makefile.config fi fi
Re: cvs commit: apache-1.3/src/modules/standard mod_rewrite.c
In article <[EMAIL PROTECTED]> you wrote: > Beachtet dieser Patch die ExecCGI option? Oder kann man die damit > unterlaufen? No, ExecCGI is still needed. And BTW, this is not a new feature, the [T=xxx] option exists for years. And it always was used this way. All I changed this time was to remove the inconsistency with the "-" pseudo-substitution URL (which means no subst). Nothing else. In the past one has to rewrite the URL to whatever and the whatever back to the URL to achieve this effect because "-" didn't honor the MIME-type stuff. So, no new features or new bugs, just one inconsistency less. Ralf S. Engelschall [EMAIL PROTECTED] www.engelschall.com
cvs commit: apache-1.3/src/modules/proxy proxy_ftp.c
rse 98/03/20 03:17:14 Modified:src/modules/proxy proxy_ftp.c Log: As per request from Martin we should not create the Content-Length in the situation where one uses the ";type=a" feature (forced ASCII mode) because of newline translations. Revision ChangesPath 1.53 +1 -1 apache-1.3/src/modules/proxy/proxy_ftp.c Index: proxy_ftp.c === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/proxy_ftp.c,v retrieving revision 1.52 retrieving revision 1.53 diff -u -r1.52 -r1.53 --- proxy_ftp.c 1998/03/20 09:11:14 1.52 +++ proxy_ftp.c 1998/03/20 11:17:14 1.53 @@ -989,7 +989,7 @@ else { proxy_add_header(resp_hdrs, "Content-Type", "text/plain", HDR_REP); } - if (size != NULL) { + if (parms[0] != 'a' && size != NULL) { proxy_add_header(resp_hdrs, "Content-Length", size, HDR_REP); Explain1("FTP: Content-Length set to %s", size); }
cvs commit: apache-1.3/htdocs/manual/mod directives.html
rse 98/03/20 03:08:27 Modified:htdocs/manual/mod directives.html Log: One more missing hyperlink. Revision ChangesPath 1.41 +1 -0 apache-1.3/htdocs/manual/mod/directives.html Index: directives.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/directives.html,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- directives.html 1998/03/20 10:35:27 1.40 +++ directives.html 1998/03/20 11:08:26 1.41 @@ -134,6 +134,7 @@ MaxRequestsPerChild MaxSpareServers MetaDir +MetaFiles MetaSuffix MimeMagicFile MinSpareServers
cvs commit: apache-1.3/htdocs/manual/mod directives.html
rse 98/03/20 02:35:27 Modified:htdocs/manual/mod directives.html Log: Add missing hyperlinks. PR#: 1963 Revision ChangesPath 1.40 +4 -0 apache-1.3/htdocs/manual/mod/directives.html Index: directives.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/directives.html,v retrieving revision 1.39 retrieving revision 1.40 diff -u -r1.39 -r1.40 --- directives.html 1998/02/04 21:40:04 1.39 +++ directives.html 1998/03/20 10:35:27 1.40 @@ -128,6 +128,7 @@LockFile LogFormat +LogLevel MaxClients MaxKeepAliveRequests MaxRequestsPerChild @@ -145,6 +146,8 @@ Port ProxyBlock ProxyPass +ProxyPassReverse +ProxyReceiveBufferSize ProxyRemote ProxyRequests ReadmeName @@ -159,6 +162,7 @@ RewriteBase RewriteCond RewriteEngine +RewriteLock RewriteLog RewriteLogLevel RewriteMap
cvs commit: apache-1.3/src/modules/standard mod_auth_db.c
rse 98/03/20 01:42:46 Modified:htdocs/manual/mod mod_auth_db.html src/modules/standard mod_auth_db.c Log: Added hints to the source and documentation what version is needed and where to find that version on the net. PR#: 1423 Revision ChangesPath 1.14 +10 -0 apache-1.3/htdocs/manual/mod/mod_auth_db.html Index: mod_auth_db.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_auth_db.html,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- mod_auth_db.html 1998/02/05 22:33:55 1.13 +++ mod_auth_db.html 1998/03/20 09:42:44 1.14 @@ -21,6 +21,16 @@ files for those systems which support DB and not DBM. It is only available in Apache 1.1 and later. + +On some BSD systems (e.g. FreeBSD and NetBSD) dbm is automatically mapped to +Berkeley DB. You can use either mod_auth_dbm +or mod_auth_db. The latter makes it more obvious that it's Berkeley DB. On +other platforms where you want to use the DB library you usually have to +install it first. See http://www.sleepycat.com/";>http://www.sleepycat.com/ for the +distribution. The interface this module uses is the one from DB version 1.85 +and 1.86, but DB version 2.x can also be used when compatibility mode is +enabled. AuthDBGroupFile 1.28 +5 -0 apache-1.3/src/modules/standard/mod_auth_db.c Index: mod_auth_db.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_auth_db.c,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- mod_auth_db.c 1998/03/13 19:20:30 1.27 +++ mod_auth_db.c 1998/03/20 09:42:46 1.28 @@ -73,6 +73,11 @@ * On some BSD systems (e.g. FreeBSD and NetBSD) dbm is automatically * mapped to Berkeley DB. You can use either mod_auth_dbm or * mod_auth_db. The latter makes it more obvious that it's Berkeley. + * On other platforms where you want to use the DB library you + * usually have to install it first. See http://www.sleepycat.com/ + * for the distribution. The interface this module uses is the + * one from DB version 1.85 and 1.86, but DB version 2.x + * can also be used when compatibility mode is enabled. * * dirkx - Added Authoritative control to allow passing on to lower * modules if and only if the user-id is not known to this
cvs commit: apache-1.3/src CHANGES
rse 98/03/20 01:27:41 Modified:src CHANGES Log: typo Revision ChangesPath 1.727 +1 -1 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.726 retrieving revision 1.727 diff -u -r1.726 -r1.727 --- CHANGES 1998/03/20 09:11:12 1.726 +++ CHANGES 1998/03/20 09:27:39 1.727 @@ -1,6 +1,6 @@ Changes with Apache 1.3b6 - *) Now mod_proxy uses the reponse string (in addition to the response status + *) Now mod_proxy uses the response string (in addition to the response status code) from the already used FTP SIZE command to setup the Content-Length header if available. [Ralf S. Engelschall, PR#1183]
cvs commit: apache-1.3/src/modules/proxy proxy_ftp.c
rse 98/03/20 01:11:15 Modified:.STATUS src CHANGES src/modules/proxy proxy_ftp.c Log: The proxy module now uses the already determined response of the FTP SITE command to provide a Content-Length header for FTP requests. Submitted by: Ralf S. Engelschall PR#: 1183 Revision ChangesPath 1.200 +2 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.199 retrieving revision 1.200 diff -u -r1.199 -r1.200 --- STATUS1998/03/20 07:56:47 1.199 +++ STATUS1998/03/20 09:11:06 1.200 @@ -99,7 +99,8 @@ * Ralf's additional manual pages for the support programs * Ben Hyde's Configure check for unknown command switch * Martin's fix for src/helpers/fp2rp -* Ralf's reanimation of an undocumented directive: ProxyReceiveBufferSize +* Ralf's reanim. of (undocumented) directive: ProxyReceiveBufferSize, PR#1348 +* Ralf's mod_proxy fix to use FTP SIZE response for Content-Length, PR#1183 Available Patches: 1.726 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.725 retrieving revision 1.726 diff -u -r1.725 -r1.726 --- CHANGES 1998/03/20 07:56:51 1.725 +++ CHANGES 1998/03/20 09:11:12 1.726 @@ -1,5 +1,9 @@ Changes with Apache 1.3b6 + *) Now mod_proxy uses the reponse string (in addition to the response status + code) from the already used FTP SIZE command to setup the Content-Length + header if available. [Ralf S. Engelschall, PR#1183] + *) Reanimated the (still undocumented) proxy receive buffer size directive: Renamed from ReceiveBufferSize to ProxyReceiveBufferSize because the old name was really too generic, added documentation for this directive to 1.52 +59 -2 apache-1.3/src/modules/proxy/proxy_ftp.c Index: proxy_ftp.c === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/proxy_ftp.c,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- proxy_ftp.c 1998/03/20 07:56:55 1.51 +++ proxy_ftp.c 1998/03/20 09:11:14 1.52 @@ -213,6 +213,47 @@ return status; } +/* + * Like ftp_getrc but returns both the ftp status code and + * remembers the response message in the supplied buffer + */ +static int ftp_getrc_msg(BUFF *f, char *msgbuf, int msglen) +{ +int len, status; +char linebuff[100], buff[5]; +char *mb = msgbuf; +int ml = msglen; + +len = bgets(linebuff, 100, f); +if (len == -1) + return -1; +if (len < 5 || !isdigit(linebuff[0]) || !isdigit(linebuff[1]) || + !isdigit(linebuff[2]) || (linebuff[3] != ' ' && linebuff[3] != '-')) + status = 0; +else + status = 100 * linebuff[0] + 10 * linebuff[1] + linebuff[2] - 111 * '0'; + +mb = ap_cpystrn(mb, linebuff+4, len-4 < ml ? len-4 : ml); + +if (linebuff[len - 1] != '\n') + (void)bskiplf(f); + +if (linebuff[3] == '-') { + memcpy(buff, linebuff, 3); + buff[3] = ' '; + do { + len = bgets(linebuff, 100, f); + if (len == -1) + return -1; + if (linebuff[len - 1] != '\n') { + (void)bskiplf(f); + } +mb = ap_cpystrn(mb, linebuff+4, len-4 < ml ? len-4 : ml); + } while (memcmp(linebuff, buff, 4) != 0); +} +return status; +} + static long int send_dir(BUFF *f, request_rec *r, BUFF *f2, struct cache_req *c, char *url) { char buf[IOBUFSIZE]; @@ -441,11 +482,20 @@ char pasv[64]; char *pstr; +/* stuff for responses */ +char *resp; +int resplen; +char *size = NULL; + /* we only support GET and HEAD */ if (r->method_number != M_GET) return NOT_IMPLEMENTED; +/* allocate a buffer for the response message */ + resplen = MAX_STRING_LEN; + resp = (char *)palloc(r->pool, resplen); + /* We break the URL into host, port, path-search */ host = pstrdup(p, url + 6); @@ -833,8 +883,8 @@ bputs(CRLF, f); bflush(f); Explain1("FTP: SIZE %s", path); - i = ftp_getrc(f); - Explain1("FTP: returned status %d", i); + i = ftp_getrc_msg(f, resp, resplen); + Explain2("FTP: returned status %d with response %s", i, resp); if (i != 500) { /* Size command not recognized */
cvs commit: apache-1.3/src/modules/proxy mod_proxy.c proxy_ftp.c proxy_http.c
rse 98/03/19 23:56:57 Modified:.STATUS htdocs/manual new_features_1_3.html htdocs/manual/mod mod_proxy.html src CHANGES src/modules/proxy mod_proxy.c proxy_ftp.c proxy_http.c Log: Reanimation of an undocumented feature of mod_proxy: ProxyReceiveBufferSize Submitted by: Ralf S. Engelschall PR#: 1348 Revision ChangesPath 1.199 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.198 retrieving revision 1.199 diff -u -r1.198 -r1.199 --- STATUS1998/03/20 07:29:48 1.198 +++ STATUS1998/03/20 07:56:47 1.199 @@ -99,6 +99,7 @@ * Ralf's additional manual pages for the support programs * Ben Hyde's Configure check for unknown command switch * Martin's fix for src/helpers/fp2rp +* Ralf's reanimation of an undocumented directive: ProxyReceiveBufferSize Available Patches: 1.50 +2 -2 apache-1.3/htdocs/manual/new_features_1_3.html Index: new_features_1_3.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/new_features_1_3.html,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- new_features_1_3.html 1998/03/10 01:35:52 1.49 +++ new_features_1_3.html 1998/03/20 07:56:48 1.50 @@ -281,8 +281,8 @@ The critical path for static requests has fewer system calls. This generally helps all requests. (45 syscalls for a static request in 1.2 versus 22 in 1.3 in a well tuned configuration). -ReceiveBufferSize +ProxyReceiveBufferSize directive gives mod_proxy's outgoing connections larger network buffers, for increased throughput. The low level I/O routines use writev (where available) 1.37 +46 -0 apache-1.3/htdocs/manual/mod/mod_proxy.html Index: mod_proxy.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_proxy.html,v retrieving revision 1.36 retrieving revision 1.37 diff -u -r1.36 -r1.37 --- mod_proxy.html1998/03/04 08:53:52 1.36 +++ mod_proxy.html1998/03/20 07:56:49 1.37 @@ -45,6 +45,7 @@ ProxyPass ProxyPassReverse ProxyBlock +ProxyReceiveBufferSize NoProxy ProxyDomain CacheRoot @@ -318,6 +319,51 @@ blocks connections to all sites. + + + +ProxyReceiveBufferSize +Syntax: ProxyReceiveBufferSize <bytes> +Default: None +Context: server config, virtual host +Override: Not applicable +Status: Base +Module: mod_proxy +Compatibility: ProxyReceiveBufferSize is only available in +Apache 1.3 and later. + +The ProxyReceiveBufferSize directive specifies an explicit network buffer size +for outgoing HTTP and FTP connections, for increased throughput. It has to be +greater then 512 or set to 0 to indicate that the systems default buffer size +should be used. + + +Example: + + + ProxyReceiveBufferSize 2048 + 1.725 +6 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.724 retrieving revision 1.725 diff -u -r1.724 -r1.725 --- CHANGES 1998/03/20 07:29:49 1.724 +++ CHANGES 1998/03/20 07:56:51 1.725 @@ -1,5 +1,11 @@ Changes with Apache 1.3b6 + *) Reanimated the (still undocumented) proxy receive buffer size directive: + Renamed from ReceiveBufferSize to ProxyReceiveBufferSize because the old + name was really too generic, added documentation for this directive to + the mod_proxy.html and corrected the hyperlink to it in the + new_features_1.3.html document. [Ralf S. Engelschall, PR#1348] + *) Fix a bug in the src/helpers/fp2rp script and make it a little bit faster [Martin Kraemer] 1.47 +5 -5 apache-1.3/src/modules/proxy/mod_proxy.c Index: mod_proxy.c === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/mod_proxy.c,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- mod_proxy.c 1998/03/13 19:20:23 1.46 +++ mod_proxy.c 1998/03/20 07:56:54 1.47 @@ -728,7 +728,7 @@ get_module_config(parms->server->module_config, &proxy_module); int s = atoi(arg); if (s < 512 && s != 0) { - return "ReceiveBufferSize must be >= 512 bytes, or 0 for system default."; + return "ProxyReceiveBufferSize must be >= 512 byt
cvs commit: apache-1.3/src CHANGES
rse 98/03/19 23:29:51 Modified:.STATUS src CHANGES Log: Munich/Germany: snow is falling again... Revision ChangesPath 1.198 +2 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.197 retrieving revision 1.198 diff -u -r1.197 -r1.198 --- STATUS1998/03/19 10:05:37 1.197 +++ STATUS1998/03/20 07:29:48 1.198 @@ -97,6 +97,8 @@ * Ken's change HIDE default to "yes", always include hide.h * Ralf's major Configure cleanup * Ralf's additional manual pages for the support programs +* Ben Hyde's Configure check for unknown command switch +* Martin's fix for src/helpers/fp2rp Available Patches: 1.724 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.723 retrieving revision 1.724 diff -u -r1.723 -r1.724 --- CHANGES 1998/03/19 20:02:01 1.723 +++ CHANGES 1998/03/20 07:29:49 1.724 @@ -1,4 +1,7 @@ Changes with Apache 1.3b6 + + *) Fix a bug in the src/helpers/fp2rp script and make it a little bit + faster [Martin Kraemer] *) Make Configure die when you give it an unknown command switch. [Ben Hyde]
cvs commit: apache-1.3/src/helpers fp2rp
rse 98/03/19 23:23:42 Modified:src/helpers fp2rp Log: Make this script a little bit faster and fix a bug which could cause problems in the future when perhaps deeper subdirs exist. Submitted by: Martin Kraemer Revision ChangesPath 1.3 +2 -2 apache-1.3/src/helpers/fp2rp Index: fp2rp === RCS file: /export/home/cvs/apache-1.3/src/helpers/fp2rp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- fp2rp 1998/03/17 16:15:58 1.2 +++ fp2rp 1998/03/20 07:23:42 1.3 @@ -6,8 +6,8 @@ rp="." else rp="" -for pe in `echo $1 | sed -e 's:/: :'`; do - rp="../$rp" +for pe in `IFS="$IFS/"; echo $1`; do +rp="../$rp" done fi echo $rp | sed -e 's:/$::'
cvs commit: apache-1.3/src/support dbmmanage.readme cls.c
rse 98/03/19 07:05:33 Removed: src/support dbmmanage.readme cls.c Log: Cleanup: remove cls.c (copied to src/test/ in repository) and dbmmanage.readme
cvs commit: apache-1.3/src/support dbmmanage.1 suexec.8 htdigest.1 rotatelogs.8 logresolve.8 htpasswd.1
rse 98/03/19 02:05:51 Modified:.STATUS src CHANGES src/support htpasswd.1 Added: src/support dbmmanage.1 suexec.8 htdigest.1 rotatelogs.8 logresolve.8 Log: Here they come, fresh out of my fingers: Manual pages for support programs which still don't have one. Revision ChangesPath 1.197 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.196 retrieving revision 1.197 diff -u -r1.196 -r1.197 --- STATUS1998/03/17 15:47:30 1.196 +++ STATUS1998/03/19 10:05:37 1.197 @@ -96,6 +96,7 @@ * Ralf's new ApacheBench support program (src/support/ab.c) * Ken's change HIDE default to "yes", always include hide.h * Ralf's major Configure cleanup +* Ralf's additional manual pages for the support programs Available Patches: 1.722 +6 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.721 retrieving revision 1.722 diff -u -r1.721 -r1.722 --- CHANGES 1998/03/17 15:42:22 1.721 +++ CHANGES 1998/03/19 10:05:40 1.722 @@ -1,5 +1,11 @@ Changes with Apache 1.3b6 + *) Add five new and fresh manpages for the support programs: dbmmanage.1, + suexec.8, htdigest.1, rotatelogs.8 and logresolve.8. Now all up-to-date + and per default compiled support programs have manual pages - just to + document our stuff a little bit more and to be able to do really + Unix-like installations ;-) [Ralf S. Engelschall] + *) Major cleanups to the Configure script to make it and its generated Makefiles again readable and maintainable: add SRCDIR option, removed INCLUDES_DEPTH[0-2] kludge, cleanup of TARGET option, cleanup of 1.5 +2 -1 apache-1.3/src/support/htpasswd.1 Index: htpasswd.1 === RCS file: /export/home/cvs/apache-1.3/src/support/htpasswd.1,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- htpasswd.11998/03/16 16:04:22 1.4 +++ htpasswd.11998/03/19 10:05:45 1.5 @@ -90,4 +90,5 @@ \fIusername\fP does not exist is this file, an entry is added. If it does exist, the password is changed. .SH SEE ALSO -httpd(8) +.BR httpd(8) +. 1.1 apache-1.3/src/support/dbmmanage.1 Index: dbmmanage.1 === .TH dbmmanage 1 "March 1998" .\" Copyright (c) 1998 The Apache Group. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" .\" 1. Redistributions of source code must retain the above copyright .\"notice, this list of conditions and the following disclaimer. .\" .\" 2. Redistributions in binary form must reproduce the above copyright .\"notice, this list of conditions and the following disclaimer in .\"the documentation and/or other materials provided with the .\"distribution. .\" .\" 3. All advertising materials mentioning features or use of this .\"software must display the following acknowledgment: .\""This product includes software developed by the Apache Group .\"for use in the Apache HTTP server project (http://www.apache.org/)." .\" .\" 4. The names "Apache Server" and "Apache Group" must not be used to .\"endorse or promote products derived from this software without .\"prior written permission. .\" .\" 5. Redistributions of any form whatsoever must retain the following .\"acknowledgment: .\""This product includes software developed by the Apache Group .\"for use in the Apache HTTP server project (http://www.apache.org/)." .\" .\" THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY .\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR .\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, .\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; .\" LOSS OF USE, DATA, OR PROFITS; OR BUS
cvs commit: apache-1.3/src/support ab.c htpasswd.c htdigest.c suexec.c
rse 98/03/19 01:56:45 Modified:src/support ab.c htpasswd.c htdigest.c suexec.c Log: Also "static" stuff for the support files to make `gcc -Wall -Wshadow -Wmissing-prototypes -Wmissing-declarations' also happy for those sources. Revision ChangesPath 1.2 +11 -12apache-1.3/src/support/ab.c Index: ab.c === RCS file: /export/home/cvs/apache-1.3/src/support/ab.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ab.c 1998/03/17 12:46:41 1.1 +++ ab.c 1998/03/19 09:56:41 1.2 @@ -183,7 +183,7 @@ /* write out request to a connection - assumes we can write (small) request out in one go into our new socket buffer */ -void write_request(struct connection *c) +static void write_request(struct connection *c) { gettimeofday(&c->connect, 0); write(c->fd, request, reqlen); @@ -196,7 +196,7 @@ /* make an fd non blocking */ -void nonblock(int fd) +static void nonblock(int fd) { int i = 1; ioctl(fd, FIONBIO, &i); @@ -206,7 +206,7 @@ /* returns the time in ms between two timevals */ -int timedif(struct timeval a, struct timeval b) +static int timedif(struct timeval a, struct timeval b) { register int us, s; @@ -221,7 +221,7 @@ /* calculate and output results and exit */ -void output_results() +static void output_results(void) { int timetaken; @@ -285,7 +285,7 @@ /* start asnchronous non-blocking connection */ -void start_connect(struct connection *c) +static void start_connect(struct connection *c) { c->read = 0; c->bread = 0; @@ -325,7 +325,7 @@ /* close down connection and save stats */ -void close_connection(struct connection *c) +static void close_connection(struct connection *c) { if (c->read == 0 && c->keepalive) { /* server has legitiamately shut down an idle keep alive request */ @@ -365,7 +365,7 @@ /* read data from connection */ -void read_connection(struct connection *c) +static void read_connection(struct connection *c) { int r; @@ -490,7 +490,7 @@ /* run the tests */ -int test() +static void test(void) { struct timeval timeout, now; fd_set sel_read, sel_except, sel_write; @@ -580,13 +580,12 @@ if (done >= requests) output_results(); } -return 0; } /* --- */ /* display copyright information */ -void copyright(void) +static void copyright(void) { printf("This is ApacheBench, Version %s\n", VERSION); printf("Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/\n";); @@ -595,7 +594,7 @@ } /* display usage information */ -void usage(char *progname) +static void usage(char *progname) { fprintf(stderr, "Usage: %s [options] [http://]hostname[:port]/path\n";, progname); fprintf(stderr, "Options are:\n"); @@ -612,7 +611,7 @@ /* split URL into parts */ -int parse_url(char *url) +static int parse_url(char *url) { char *cp; char *h; 1.14 +9 -9 apache-1.3/src/support/htpasswd.c Index: htpasswd.c === RCS file: /export/home/cvs/apache-1.3/src/support/htpasswd.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- htpasswd.c1998/03/18 00:58:34 1.13 +++ htpasswd.c1998/03/19 09:56:42 1.14 @@ -30,7 +30,7 @@ char *tn; -char *strd(char *s) +static char *strd(char *s) { char *d; @@ -39,7 +39,7 @@ return (d); } -void getword(char *word, char *line, char stop) +static void getword(char *word, char *line, char stop) { int x = 0, y; @@ -54,7 +54,7 @@ while ((line[y++] = line[x++])); } -int getline(char *s, int n, FILE *f) +static int getline(char *s, int n, FILE *f) { register int i = 0; @@ -72,7 +72,7 @@ } } -void putline(FILE *f, char *l) +static void putline(FILE *f, char *l) { int x; @@ -86,7 +86,7 @@ static unsigned char itoa64[] = /* 0 ... 63 => ascii - 64 */ "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; -void to64(register char *s, register long v, register int n) +static void to64(register char *s, register long v, register int n) { while (--n >= 0) { *s++ = itoa64[v & 0x3f]; @@ -99,7 +99,7 @@ * issue the prompt and read the results with echo. (Ugh). */ -char *getpass(const char *prompt) +static char *getpass(const char *prompt) { static char password[81]; @@ -116,7 +116,7 @@ #endif -void add
cvs commit: apache-1.3/src/helpers fp2rp
rse 98/03/17 08:15:59 Modified:src/helpers fp2rp Log: Make clear what this snippet does... Revision ChangesPath 1.2 +3 -0 apache-1.3/src/helpers/fp2rp Index: fp2rp === RCS file: /export/home/cvs/apache-1.3/src/helpers/fp2rp,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- fp2rp 1998/03/17 16:08:45 1.1 +++ fp2rp 1998/03/17 16:15:58 1.2 @@ -1,4 +1,7 @@ #!/bin/sh +## +## fp2rp -- convert a standard forward path to a reverse dotted path +## if [ "x$1" = x. ]; then rp="." else
cvs commit: apache-1.3/src/modules/proxy .cvsignore
rse 98/03/17 07:50:34 Modified:src/modules/proxy .cvsignore Log: Here we used a special extension to avoid conflicts... Revision ChangesPath 1.4 +1 -0 apache-1.3/src/modules/proxy/.cvsignore Index: .cvsignore === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/.cvsignore,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- .cvsignore1997/10/07 20:03:35 1.3 +++ .cvsignore1998/03/17 15:50:33 1.4 @@ -6,3 +6,4 @@ ApacheModuleProxy.opt ApacheModuleProxy.plg Makefile +*.so-o
cvs commit: apache-1.3 STATUS
rse 98/03/17 07:47:31 Modified:.STATUS Log: The same weather as always in germany these days: gray in gray... Revision ChangesPath 1.196 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.195 retrieving revision 1.196 diff -u -r1.195 -r1.196 --- STATUS1998/03/17 13:08:49 1.195 +++ STATUS1998/03/17 15:47:30 1.196 @@ -95,6 +95,7 @@ * Dean's API_EXPORT and CORE_EXPORT cleanup for core functions * Ralf's new ApacheBench support program (src/support/ab.c) * Ken's change HIDE default to "yes", always include hide.h +* Ralf's major Configure cleanup Available Patches:
cvs commit: apache-1.3/src/support Makefile.tmpl
rse 98/03/17 07:42:43 Modified:src CHANGES Configure Makefile.tmpl src/ap Makefile.tmpl src/main Makefile.tmpl src/modules/example Makefile.tmpl src/modules/experimental Makefile.tmpl src/modules/extra Makefile.tmpl src/modules/proxy Makefile.tmpl src/modules/standard Makefile.tmpl src/modules/test Makefile.tmpl src/os/bs2000 Makefile.tmpl src/os/emx Makefile.tmpl src/os/unix Makefile.tmpl src/regex Makefile.tmpl src/support Makefile.tmpl Log: Major Configure Cleanup === 1. Now every Makefile receives a SRCDIR option which is set to ".", "..". "../.." etc. for the various subdirs and thus shows the individual path to the root of our src/ directory. [MAJOR CHANGE] 2. Replaced ugly INCLUDES_DEPTH[0-2] kludge with a SRCDIR based INCLUDES0 option which now reads ``INCLUDES0=-I$(SRCDIR)/os/unix -I$(SRCDIR)/include'' [MAJOR CHANGE] 3. Now replaced all locally defined INCDIR's with a globally defined INCDIR=$(SRCDIR)/include 4. Removed the TARGET option from all Makefiles (because it is not needed there) except for the top-level one (where it is needed) 5. Stripped confusing comments (##RULE..., etc.) and consequently add Begin/End comments for the generated sections 6. All Makefiles now contain a header with inheritance information, i.e. from which files it was derived 7. Subdirectory movement messages is now built-in for easier following where the build process currently stays. 8. All comments now have the same style in the Configure script. 9. The Apache license header was added to the Configure script 10. Fixed a few bugs in Configure ([] vs. [], etc.) 11. Tested under FreeBSD, Linux, Solaris and SunOS to make sure no new bugs were introduced. Hmmm [Re-run the Configure script!] Revision ChangesPath 1.721 +9 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.720 retrieving revision 1.721 diff -u -r1.720 -r1.721 --- CHANGES 1998/03/17 13:08:50 1.720 +++ CHANGES 1998/03/17 15:42:22 1.721 @@ -1,5 +1,14 @@ Changes with Apache 1.3b6 + *) Major cleanups to the Configure script to make it and its generated + Makefiles again readable and maintainable: add SRCDIR option, removed + INCLUDES_DEPTH[0-2] kludge, cleanup of TARGET option, cleanup of + generated sections, consequently added Makefile headers with inheritance + information, added subdir movement messages for easier following where + the build process currently stays (more verbose then standard Make, less + verbose than GNU make), same style to comments in the Configure script, + added Apache license header, fixed a few bugs, etc. [Ralf S. Engelschall] + *) The default for the HIDE rule is now "yes" to aid portability, and include/hide.h is always included. It doesn't do anything if the rule is "no" but the dependencies don't change now regardless. 1.211 +335 -254 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.210 retrieving revision 1.211 diff -u -r1.210 -r1.211 --- Configure 1998/03/16 18:36:17 1.210 +++ Configure 1998/03/17 15:42:23 1.211 @@ -1,23 +1,80 @@ #!/bin/sh -exitcode=0 -trap 'rm -f $tmpfile $tmpfile2 $tmpfile3 $tmpconfig $awkfile; exit $exitcode' 0 1 2 3 15 +## +## Copyright (c) 1995-1998 The Apache Group. All rights reserved. +## +## Redistribution and use in source and binary forms, with or without +## modification, are permitted provided that the following conditions +## are met: +## +## 1. Redistributions of source code must retain the above copyright +##notice, this list of conditions and the following disclaimer. +## +## 2. Redistributions in binary form must reproduce the above copyright +##notice, this list of conditions and the following disclaimer in +##the documentation and/or other materials provided with the +##distribution. +## +## 3. All advertising materials mentioning features or use of this +##software must display the following acknowledgment: +##"This product includes software developed by the Apache Group +##for use in the Apache HTTP server project (http://www.apac
cvs commit: apache-1.3/src/support .cvsignore
rse 98/03/17 05:59:02 Modified:src/support .cvsignore Log: Add ab. Revision ChangesPath 1.5 +1 -0 apache-1.3/src/support/.cvsignore Index: .cvsignore === RCS file: /export/home/cvs/apache-1.3/src/support/.cvsignore,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- .cvsignore1997/02/19 23:35:10 1.4 +++ .cvsignore1998/03/17 13:59:01 1.5 @@ -7,3 +7,4 @@ httpd_monitor suexec logresolve +ab
cvs commit: apache-1.3/src/test zb.c
rse 98/03/17 04:53:32 Modified:src/test zb.c Log: Backout my recent changes, because we now have src/support/ab.[c1] which already contains these changes together with a lot of other cleanups. Better to leave the original zb.c as original as it can be... (BTW: This zb.c is already not really original, because there were already two commits from Dean in the past) Revision ChangesPath 1.4 +16 -23apache-1.3/src/test/zb.c Index: zb.c === RCS file: /export/home/cvs/apache-1.3/src/test/zb.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- zb.c 1998/03/16 15:23:24 1.3 +++ zb.c 1998/03/17 12:53:31 1.4 @@ -191,10 +191,9 @@ gettimeofday(&endtime,0); timetaken = timedif(endtime, start); - printf("Server Hostname:%s\n", machine); - printf("Server Software:%s\n", server_name); - printf("Document Path: %s\n", file); - printf("Document Length:%d bytes\n", doclen); + printf("\n---\n"); + printf("Server: %s\n", server_name); + printf("Document Length:%d\n", doclen); printf("Concurency Level: %d\n", concurrency); printf("Time taken for tests: %d.%03d seconds\n", timetaken/1000, timetaken%1000); @@ -203,8 +202,8 @@ if(bad) printf(" (Connect: %d, Length: %d, Exceptions: %d)\n", err_conn, err_length, err_except); if(keepalive) printf("Keep-Alive requests:%d\n", doneka); - printf("Total transfered: %d bytes\n", totalread); - printf("HTML transfered:%d bytes\n", totalbread); + printf("Bytes transfered: %d\n", totalread); + printf("HTML transfered:%d\n", totalbread); /* avoid divide by zero */ if(timetaken) { @@ -233,6 +232,7 @@ printf(" min avg max\n"); printf("Connect: %5d %5d %5d\n",mincon, totalcon/requests, maxcon ); printf("Total: %5d %5d %5d\n", mintot, total/requests, maxtot); +printf("---\n\n"); } exit(0); @@ -453,7 +453,7 @@ FD_ZERO(&writebits); /* setup request */ - sprintf(request,"GET %s HTTP/1.0\r\nUser-Agent: ZeusBench/1.01\r\n" + sprintf(request,"GET %s HTTP/1.0\r\nUser-Agent: ZeusBench/1.0\r\n" "%sHost: %s\r\nAccept: */*\r\n\r\n", file, keepalive?"Connection: Keep-Alive\r\n":"", machine ); @@ -509,16 +509,10 @@ /* display usage information */ void usage(char *progname) { - printf("This is ZeusBench, Version v1.01\n"); - printf("\n"); - printf("Usage: %s [options] \n", progname); - printf("-k KeepAlive\n"); - printf("-n requests Number of requests to peforms\n"); - printf("-t timelimitSeconds to max. wait for responses\n"); - printf("-c concurrency Number of multiple requests to make\n"); - printf("-p port Port number to use\n"); - printf("\n"); - printf("Path should start with a '/' e.g. /index.html\n\n"); + printf("\nZeusBench v1.0\n\n"); + printf("Usage: %s [-k] [-n requests | -t timelimit (sec)]" + "\n\t\t[-c concurrency] [-p port] \n",progname); + printf("Filename should start with a '/' e.g. /index.html\n\n"); exit(EINVAL); } @@ -528,7 +522,11 @@ int main(int argc, char **argv) { int c; - optind = 1; + if (argc < 3) usage(argv[0]); + + machine = argv[1]; + file = argv[2]; + optind = 3; while ((c = getopt(argc,argv,"p:n:c:d:t:d:k"))>0) { switch(c) { case 'd': @@ -558,11 +556,6 @@ break; } } - if (optind != argc-2) - usage(argv[0]); - - machine = argv[optind++]; - file = argv[optind++]; test(); return 0; }
cvs commit: apache-1.3/src/support ab.c ab.1 Makefile.tmpl
rse 98/03/17 04:46:42 Modified:.STATUS src CHANGES src/support Makefile.tmpl Added: src/support ab.c ab.1 Log: Include of the new "ApacheBench" support program: o base is ZeusBench 1.0 from Adam Twiss, Zeus Technology Ltd. o includes enhancements by Dean from November 1997 for keepalive, SunOS4, etc. pp. which were already committed to src/test/zb.c o cleanups and enhancements by Ralf from March 1998: command line parsing, new options, URL-like target specification, manual page, Apache-style code indentation, etc. o !!IMPORTANT!! personal license agreement from March 1998 with Adam Twiss from Zeus Technology (see message <[EMAIL PROTECTED]> in apache-core mailing list for reference) to include this version into the Apache distribution the way it currently is. So, don't change copyright messages or other license stuff there, please. The program itself can now be enhanced or changed in any way. Revision ChangesPath 1.194 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.193 retrieving revision 1.194 diff -u -r1.193 -r1.194 --- STATUS1998/03/17 09:59:30 1.193 +++ STATUS1998/03/17 12:46:36 1.194 @@ -93,6 +93,7 @@ * Ralf's Various cleanups to the command line interface and manual pages * Marc's mod_proxy was not clearing the Proxy-Connection header * Dean's API_EXPORT and CORE_EXPORT cleanup for core functions +* Ralf's new ApacheBench support program (src/support/ab.c) Available Patches: 1.719 +7 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.718 retrieving revision 1.719 diff -u -r1.718 -r1.719 --- CHANGES 1998/03/17 08:31:00 1.718 +++ CHANGES 1998/03/17 12:46:38 1.719 @@ -1,5 +1,12 @@ Changes with Apache 1.3b6 + *) Add the new ApacheBench program "ab" to src/support/: This is derived + from the ZeusBench benchmarking program and can be used to determine the + response performance of an Apache installation. This version is + officially licensed with Zeus Technology, Ltd. See the license agreement + statements in <[EMAIL PROTECTED]> in apache-core. + [Ralf S. Engelschall] + *) API: Various core functions that are definately not part of the API have been made static, and a few have been marked API_EXPORT. Still more have been marked CORE_EXPORT and are not intended for general 1.11 +5 -2 apache-1.3/src/support/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/support/Makefile.tmpl,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- Makefile.tmpl 1998/03/13 08:15:26 1.10 +++ Makefile.tmpl 1998/03/17 12:46:41 1.11 @@ -9,9 +9,9 @@ LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) -L../ap INCDIR=../include -TARGETS=htpasswd htdigest rotatelogs logresolve +TARGETS=htpasswd htdigest rotatelogs logresolve ab -OBJS=htpasswd.o htdigest.o rotatelogs.o logresolve.o +OBJS=htpasswd.o htdigest.o rotatelogs.o logresolve.o ab.o .c.o: $(CC) -c $(CFLAGS) $(INCLUDES) $< @@ -29,6 +29,9 @@ logresolve: logresolve.o $(CC) $(INCLUDES) $(CFLAGS) logresolve.o -o logresolve $(LDFLAGS) $(LIBS) + +ab: ab.o + $(CC) $(INCLUDES) $(CFLAGS) ab.o -o ab $(LDFLAGS) $(LIBS) clean: rm -f $(TARGETS) *.o 1.1 apache-1.3/src/support/ab.c Index: ab.c === /* * Copyright (c) 1998 The Apache Group. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. All advertising materials mentioning features or use of this *software must display the following acknowledgment: *"This product includes software developed by the Apache Group *
cvs commit: apache-1.3 STATUS
rse 98/03/17 01:59:31 Modified:.STATUS Log: update for our lazy guys ;-) Revision ChangesPath 1.193 +2 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.192 retrieving revision 1.193 diff -u -r1.192 -r1.193 --- STATUS1998/03/17 09:02:01 1.192 +++ STATUS1998/03/17 09:59:30 1.193 @@ -91,6 +91,8 @@ * Performance tweak to mod_log_config * Marc's cfg_getline() fix for lines without the termination char * Ralf's Various cleanups to the command line interface and manual pages +* Marc's mod_proxy was not clearing the Proxy-Connection header +* Dean's API_EXPORT and CORE_EXPORT cleanup for core functions Available Patches:
cvs commit: apache-1.3/src Configure
rse 98/03/16 10:36:18 Modified:src Configure Log: Shared object support for UnixWare 2.1.x (still not tested but according to the manpages of 2.1.2 this should be correct) Revision ChangesPath 1.210 +8 -0 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.209 retrieving revision 1.210 diff -u -r1.209 -r1.210 --- Configure 1998/03/15 17:03:53 1.209 +++ Configure 1998/03/16 18:36:17 1.210 @@ -741,6 +741,14 @@ LDFLAGS_SHLIB="-shared -expect_unresolved '*' -msym -s" LDFLAGS_SHLIB_EXPORT="" ;; +*-unixware21*) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/cc|cc ) CFLAGS_SHLIB="-KPIC" ;; +esac +LDFLAGS_SHLIB="-Bdynamic -G" +LDFLAGS_SHLIB_EXPORT="" +;; esac fi
cvs commit: apache-1.3/src/modules/standard mod_status.c
rse 98/03/16 08:44:28 Modified:src/modules/standard mod_status.c Log: Make sure the nested if is parsed correctly ("else"!) and make gcc -Wall happy again. Revision ChangesPath 1.81 +2 -2 apache-1.3/src/modules/standard/mod_status.c Index: mod_status.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_status.c,v retrieving revision 1.80 retrieving revision 1.81 diff -u -r1.80 -r1.81 --- mod_status.c 1998/03/16 08:40:56 1.80 +++ mod_status.c 1998/03/16 16:44:27 1.81 @@ -425,7 +425,7 @@ } #if defined(STATUS) -if (!short_report) +if (!short_report) { if (no_table_report) rputs("Server Details\n\n", r); else @@ -435,7 +435,7 @@ #else rputs("\n\nSrvPIDAccMCPU\nSSReqConnChildSlotHostVHostRequest\n\n", r); #endif - +} for (i = 0; i < HARD_SERVER_LIMIT; ++i) { score_record = scoreboard_image->servers[i];
cvs commit: apache-1.3/src CHANGES
rse 98/03/16 08:18:53 Modified:.STATUS src CHANGES Log: Weather in germany: gray in gray and sometimes raining... Revision ChangesPath 1.191 +6 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.190 retrieving revision 1.191 diff -u -r1.190 -r1.191 --- STATUS1998/03/15 07:02:55 1.190 +++ STATUS1998/03/16 16:18:49 1.191 @@ -85,6 +85,12 @@ * Performance improvements to invoke_handler(). * Ben Hyde's check to make sure the "Port" range is valid * Ralf's Unbundling mod_proxy and mod_mime (making mime_find_ct obsolete) +* Jim's change of -DAUX to -DAUX3 for A/UX +* Jim's src/include/ap_config.h wraps it's #define's with #ifndef/#endif's +* Dean's Clean up of some undocumented behavior of mod_setenvif +* Performance tweak to mod_log_config +* Marc's cfg_getline() fix for lines without the termination char +* Ralf's Various cleanups to the command line interface and manual pages Available Patches: 1.716 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.715 retrieving revision 1.716 diff -u -r1.715 -r1.716 --- CHANGES 1998/03/16 00:24:11 1.715 +++ CHANGES 1998/03/16 16:18:50 1.716 @@ -1,5 +1,8 @@ Changes with Apache 1.3b6 + *) Various cleanups to the command line interface and manual pages + [Ralf S. Engelschall] + *) cfg_getline() was not properly handling lines that did not end with a line termination character. [Marc Slemko] PR#1869, 1909
cvs commit: apache-1.3/src/support htpasswd.1
rse 98/03/16 08:04:23 Modified:src/support htpasswd.1 Log: And even more cleanups Revision ChangesPath 1.4 +7 -3 apache-1.3/src/support/htpasswd.1 Index: htpasswd.1 === RCS file: /export/home/cvs/apache-1.3/src/support/htpasswd.1,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- htpasswd.11998/01/07 16:47:11 1.3 +++ htpasswd.11998/03/16 16:04:22 1.4 @@ -64,13 +64,17 @@ Resources available from the .B httpd Apache web server can be restricted to just the users listed -in the files created by htpasswd. This program can only be used +in the files created by +.B htpasswd. +This program can only be used when the usernames are stored in a flat-file. To use a DBM database see -\fBdbmmanage\fP and \fBdbmmanage.new\fP. +\fBdbmmanage\fP. .PP This manual page only lists the command line arguments. For details of -the directives necessary to configure user authentication in httpd see +the directives necessary to configure user authentication in +.B httpd +see the Apache manual, which is part of the Apache distribution or can be found at http://www.apache.org/. .SH OPTIONS
cvs commit: apache-1.3/src/support apachectl.1 httpd.8
rse 98/03/16 07:58:53 Modified:src/main http_main.c src/support apachectl.1 httpd.8 Log: Even more cleanups for command line interface and corresponding manual pages Revision ChangesPath 1.305 +4 -0 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.304 retrieving revision 1.305 diff -u -r1.304 -r1.305 --- http_main.c 1998/03/16 12:09:54 1.304 +++ http_main.c 1998/03/16 15:58:48 1.305 @@ -3873,7 +3873,11 @@ setup_prelinked_modules(); +#ifdef DEBUG_SIGSTOP while ((c = getopt(argc, argv, "C:c:Xd:f:vVhlZ:")) != -1) { +#else +while ((c = getopt(argc, argv, "C:c:Xd:f:vVhl")) != -1) { +#endif char **new; switch (c) { case 'c': 1.3 +4 -4 apache-1.3/src/support/apachectl.1 Index: apachectl.1 === RCS file: /export/home/cvs/apache-1.3/src/support/apachectl.1,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- apachectl.1 1998/01/07 16:47:10 1.2 +++ apachectl.1 1998/03/16 15:58:52 1.3 @@ -51,13 +51,13 @@ apachectl \- Apache HTTP server control interface .SH SYNOPSIS .B apachectl -command [...] +\fIcommand\fP [...] .SH DESCRIPTION .B apachectl is a front end to the Apache HyperText Transfer Protocol (HTTP) server. It is designed to help the administrator control the functioning of the Apache -.B httpd(8) +.B httpd daemon. .PP .B NOTE: @@ -77,7 +77,7 @@ .B http://www.apache.org/ . .SH OPTIONS -The command can be any one or more of the following options: +The \fIcommand\fP can be any one or more of the following options: .TP 12 .BI start Start the Apache daemon. Gives an error if it is already running. @@ -93,7 +93,7 @@ Displays a full status report from .B mod_status. For this to work, you need to have mod_status enabled on your server -and a text-based browser such as lynx available on your system. The +and a text-based browser such as \fIlynx\fP available on your system. The URL used to access the status report can be set by editing the .B STATUSURL variable in the script. 1.5 +47 -5 apache-1.3/src/support/httpd.8 Index: httpd.8 === RCS file: /export/home/cvs/apache-1.3/src/support/httpd.8,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- httpd.8 1998/01/07 16:47:13 1.4 +++ httpd.8 1998/03/16 15:58:52 1.5 @@ -54,12 +54,34 @@ .SH SYNOPSIS .B httpd [ -.B \-hlvX? +.B \-X ] [ .BI \-d " serverroot" ] [ .BI \-f " config" +] [ +.BI \-C " directive" +] [ +.BI \-c " directive" ] + +.B httpd +[ +.B \-h +] +[ +.B \-l +] +[ +.B \-v +] +[ +.B \-V +] +[ +.B \-? +] + .SH DESCRIPTION .B httpd is the Apache HyperText Transfer Protocol (HTTP) server program. It is @@ -73,10 +95,13 @@ time a connection to the HTTP service is made. .PP This manual page only lists the command line arguments. For details -of the directives necessary to configure httpd see the Apache manual, +of the directives necessary to configure +.B httpd +see the Apache manual, which is part of the Apache distribution or can be found at http://www.apache.org/. Paths in this manual may not reflect those -compiled into httpd. +compiled into +.B httpd. .SH OPTIONS .TP 12 .BI \-d " serverroot" @@ -89,6 +114,12 @@ does not begin with a /, then it is taken to be a path relative to the ServerRoot. The default is \fBconf/httpd.conf\fP. .TP +.BI \-C " directive" +Process the configuration \fIdirective\fP before reading config files. +.TP +.BI \-c " directive" +Process the configuration \fIdirective\fP after reading config files. +.TP .B \-h Output a list of directives together with expected arguments and places where the directive is valid. @@ -102,10 +133,19 @@ to provide ordinary web service. .TP .B \-v -Print the version of httpd, and then exit. +Print the version of +.B httpd +, and then exit. +.TP +.B \-V +Print the version and build parameters of +.B httpd +, and then exit. .TP .B \-? -Print a list of the httpd options, and then exit. +Print a list of the +.B httpd +options, and then exit. .SH FILES .PD 0 .B /usr/local/apache/conf/httpd.conf @@ -115,6 +155,8 @@ .B /usr/local/apache/conf/access.conf .br .B /usr/local/apache/conf/mime.types +.br +.B /usr/local/apache/conf/magic .br .B /usr/local/apache/logs/error_log .br
cvs commit: apache-1.3/src/test zb.c
rse 98/03/16 07:23:25 Modified:src/test zb.c Log: Argl, ZeusBench is such a useful utility, but the author seems to come from VMS or DOS land: Options after arguments :-( We are in Unix land, so make ZeusBench interface Unix-like as anyone would expect: options first, then remaining non-option arguments... Revision ChangesPath 1.3 +23 -16apache-1.3/src/test/zb.c Index: zb.c === RCS file: /export/home/cvs/apache-1.3/src/test/zb.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- zb.c 1997/11/10 02:06:02 1.2 +++ zb.c 1998/03/16 15:23:24 1.3 @@ -191,9 +191,10 @@ gettimeofday(&endtime,0); timetaken = timedif(endtime, start); - printf("\n---\n"); - printf("Server: %s\n", server_name); - printf("Document Length:%d\n", doclen); + printf("Server Hostname:%s\n", machine); + printf("Server Software:%s\n", server_name); + printf("Document Path: %s\n", file); + printf("Document Length:%d bytes\n", doclen); printf("Concurency Level: %d\n", concurrency); printf("Time taken for tests: %d.%03d seconds\n", timetaken/1000, timetaken%1000); @@ -202,8 +203,8 @@ if(bad) printf(" (Connect: %d, Length: %d, Exceptions: %d)\n", err_conn, err_length, err_except); if(keepalive) printf("Keep-Alive requests:%d\n", doneka); - printf("Bytes transfered: %d\n", totalread); - printf("HTML transfered:%d\n", totalbread); + printf("Total transfered: %d bytes\n", totalread); + printf("HTML transfered:%d bytes\n", totalbread); /* avoid divide by zero */ if(timetaken) { @@ -232,7 +233,6 @@ printf(" min avg max\n"); printf("Connect: %5d %5d %5d\n",mincon, totalcon/requests, maxcon ); printf("Total: %5d %5d %5d\n", mintot, total/requests, maxtot); -printf("---\n\n"); } exit(0); @@ -453,7 +453,7 @@ FD_ZERO(&writebits); /* setup request */ - sprintf(request,"GET %s HTTP/1.0\r\nUser-Agent: ZeusBench/1.0\r\n" + sprintf(request,"GET %s HTTP/1.0\r\nUser-Agent: ZeusBench/1.01\r\n" "%sHost: %s\r\nAccept: */*\r\n\r\n", file, keepalive?"Connection: Keep-Alive\r\n":"", machine ); @@ -509,10 +509,16 @@ /* display usage information */ void usage(char *progname) { - printf("\nZeusBench v1.0\n\n"); - printf("Usage: %s [-k] [-n requests | -t timelimit (sec)]" - "\n\t\t[-c concurrency] [-p port] \n",progname); - printf("Filename should start with a '/' e.g. /index.html\n\n"); + printf("This is ZeusBench, Version v1.01\n"); + printf("\n"); + printf("Usage: %s [options] \n", progname); + printf("-k KeepAlive\n"); + printf("-n requests Number of requests to peforms\n"); + printf("-t timelimitSeconds to max. wait for responses\n"); + printf("-c concurrency Number of multiple requests to make\n"); + printf("-p port Port number to use\n"); + printf("\n"); + printf("Path should start with a '/' e.g. /index.html\n\n"); exit(EINVAL); } @@ -522,11 +528,7 @@ int main(int argc, char **argv) { int c; - if (argc < 3) usage(argv[0]); - - machine = argv[1]; - file = argv[2]; - optind = 3; + optind = 1; while ((c = getopt(argc,argv,"p:n:c:d:t:d:k"))>0) { switch(c) { case 'd': @@ -556,6 +558,11 @@ break; } } + if (optind != argc-2) + usage(argv[0]); + + machine = argv[optind++]; + file = argv[optind++]; test(); return 0; }
cvs commit: apache-1.3/src/main http_config.c http_main.c
rse 98/03/16 04:09:56 Modified:src/main http_config.c http_main.c Log: More cosmetics: - make -v and -V messages equal in style - make usage message readable and avoid line wrapping - compress the ``httpd -h'' output a little bit for easier reading Revision ChangesPath 1.106 +1 -2 apache-1.3/src/main/http_config.c Index: http_config.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_config.c,v retrieving revision 1.105 retrieving revision 1.106 diff -u -r1.105 -r1.106 --- http_config.c 1998/03/13 19:20:13 1.105 +++ http_config.c 1998/03/16 12:09:52 1.106 @@ -1520,10 +1520,9 @@ for (n = 0; preloaded_modules[n]; ++n) for (pc = preloaded_modules[n]->cmds; pc && pc->name; ++pc) { - printf("%s\n", pc->name); + printf("%s (%s)\n", pc->name, preloaded_modules[n]->name); if (pc->errmsg) printf("\t%s\n", pc->errmsg); - printf("\t%s\n", preloaded_modules[n]->name); show_overrides(pc, preloaded_modules[n]); } } 1.304 +27 -18apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.303 retrieving revision 1.304 diff -u -r1.303 -r1.304 --- http_main.c 1998/03/14 02:43:45 1.303 +++ http_main.c 1998/03/16 12:09:54 1.304 @@ -777,15 +777,24 @@ void usage(char *bin) { -fprintf(stderr, "Usage: %s [-d directory] [-f file] [-C \"directive\"] [-c \"directive\"] [-v] [-h] [-l]\n", bin); -fprintf(stderr, "-d directory : specify an alternate initial ServerRoot\n"); -fprintf(stderr, "-f file : specify an alternate ServerConfigFile\n"); -fprintf(stderr, "-C \"directive\" : process directive before reading config files\n"); -fprintf(stderr, "-c \"directive\" : process directive after reading config files\n"); -fprintf(stderr, "-v : show version number\n"); -fprintf(stderr, "-V : show compile settings\n"); -fprintf(stderr, "-h : list directives\n"); -fprintf(stderr, "-l : list modules\n"); +char pad[MAX_STRING_LEN]; +int i; + +for (i = 0; i < strlen(bin); i++) + pad[i] = ' '; +pad[i] = '\0'; +fprintf(stderr, "Usage: %s [-d directory] [-f file]\n", bin); +fprintf(stderr, " %s [-C \"directive\"] [-c \"directive\"]\n", pad); +fprintf(stderr, " %s [-v] [-V] [-h] [-l]\n", pad); +fprintf(stderr, "Options:\n"); +fprintf(stderr, " -d directory : specify an alternate initial ServerRoot\n"); +fprintf(stderr, " -f file : specify an alternate ServerConfigFile\n"); +fprintf(stderr, " -C \"directive\" : process directive before reading config files\n"); +fprintf(stderr, " -c \"directive\" : process directive after reading config files\n"); +fprintf(stderr, " -v : show version number\n"); +fprintf(stderr, " -V : show compile settings\n"); +fprintf(stderr, " -h : list available configuration directives\n"); +fprintf(stderr, " -l : list compiled-in modules\n"); exit(1); } @@ -2867,12 +2876,13 @@ static void show_compile_settings(void) { #ifdef SERVER_SUBVERSION -printf("Server base version: \"%s\"\n", SERVER_BASEVERSION); -printf("Server sub-version: \"%s\"\n", SERVER_SUBVERSION); +printf("Server base version: %s\n", SERVER_BASEVERSION); +printf("Server sub-version: %s\n", SERVER_SUBVERSION); +printf("Server built:%s\n", apapi_get_server_built()); #else -printf("Server version \"%s\"\n", apapi_get_server_version()); +printf("Server version: %s\n", apapi_get_server_version()); +printf("Server built: %s\n", apapi_get_server_built()); #endif -printf("Server built: %s\n", apapi_get_server_built()); printf("Server's Module Magic Number: %u\n", MODULE_MAGIC_NUMBER); printf("Server compiled with\n"); #ifdef BIG_SECURITY_HOLE @@ -2953,7 +2963,6 @@ #ifdef NEED_HASHBANG_EMUL printf(" -D NEED_HASHBANG_EMUL\n"); #endif -printf("\n"); } @@ -3882,8 +3891,8 @@ ap_cpystrn(server_confname, optarg, sizeof(server_confname)); break; case 'v': - printf("Server version %s.\n", apapi_get_server_version()); - printf("Server built: %s\n", apapi_get_server_built()); + printf("Server version: %s\n", apapi_get_server_version()); + printf("Server built: %s\n", apapi_get_server_built()); exit(0); case 'V': show_compile_settings(); @@ -4979,8 +4988,8 @@ ap_cpystrn(server_confname, optarg, sizeof(s
cvs commit: apache-1.3/src/modules/standard mod_so.c
rse 98/03/16 04:04:40 Modified:src/modules/standard mod_so.c Log: cosmetics Revision ChangesPath 1.12 +2 -2 apache-1.3/src/modules/standard/mod_so.c Index: mod_so.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_so.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- mod_so.c 1998/03/13 19:20:44 1.11 +++ mod_so.c 1998/03/16 12:04:39 1.12 @@ -355,9 +355,9 @@ static const command_rec so_cmds[] = { { "LoadModule", load_module, NULL, RSRC_CONF, TAKE2, - "a module name, and the name of a shared object file to load it from"}, + "a module name and the name of a shared object file to load it from"}, { "LoadFile", load_file, NULL, RSRC_CONF, ITERATE, - "share object files or libraries to link into the server at runtime"}, + "shared object file or library to load into the server at runtime"}, { NULL } };
cvs commit: apache-1.3/src/modules/standard mod_mime.c Makefile.tmpl
rse 98/03/14 04:26:27 Modified:src/modules/standard mod_mime.c Makefile.tmpl Log: Adjust mod_mime.c and Makefile.tmpl because mod_mime.h is now removed. Revision ChangesPath 1.37 +0 -1 apache-1.3/src/modules/standard/mod_mime.c Index: mod_mime.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_mime.c,v retrieving revision 1.36 retrieving revision 1.37 diff -u -r1.36 -r1.37 --- mod_mime.c1998/03/14 12:22:09 1.36 +++ mod_mime.c1998/03/14 12:26:25 1.37 @@ -62,7 +62,6 @@ #include "httpd.h" #include "http_config.h" -#include "mod_mime.h" typedef struct { table *forced_types;/* Additional AddTyped stuff */ 1.10 +1 -1 apache-1.3/src/modules/standard/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/Makefile.tmpl,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- Makefile.tmpl 1998/03/02 07:05:58 1.9 +++ Makefile.tmpl 1998/03/14 12:26:26 1.10 @@ -144,7 +144,7 @@ mod_mime.o: mod_mime.c $(INCDIR)/httpd.h $(INCDIR)/conf.h \ ../../os/unix/os.h $(INCDIR)/hsregex.h $(INCDIR)/alloc.h \ $(INCDIR)/buff.h $(INCDIR)/ap.h $(INCDIR)/util_uri.h \ - $(INCDIR)/http_config.h mod_mime.h + $(INCDIR)/http_config.h mod_mime_magic.o: mod_mime_magic.c $(INCDIR)/httpd.h \ $(INCDIR)/conf.h ../../os/unix/os.h $(INCDIR)/hsregex.h \ $(INCDIR)/alloc.h $(INCDIR)/buff.h $(INCDIR)/ap.h \
cvs commit: apache-1.3/src/include hide.h
rse 98/03/14 04:22:11 Modified:.STATUS src CHANGES src/main http_request.c src/modules/proxy proxy_ftp.c src/modules/standard mod_mime.c src/include hide.h Removed: src/modules/standard mod_mime.h Log: The unbundling of mod_proxy and mod_mime by fixing the MIME type problem where it was caused and not by using the cross-module call mime_find_ct from mod_proxy to mod_mime. Revision ChangesPath 1.189 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.188 retrieving revision 1.189 diff -u -r1.188 -r1.189 --- STATUS1998/03/13 23:53:58 1.188 +++ STATUS1998/03/14 12:22:03 1.189 @@ -84,6 +84,7 @@ * Ralf's support for building shared objects even for library-style modules * Performance improvements to invoke_handler(). * Ben Hyde's check to make sure the "Port" range is valid +* Ralf's Unbundling mod_proxy and mod_mime (making mime_find_ct obsolete) Available Patches: 1.709 +11 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.708 retrieving revision 1.709 diff -u -r1.708 -r1.709 --- CHANGES 1998/03/14 02:43:42 1.708 +++ CHANGES 1998/03/14 12:22:04 1.709 @@ -1,4 +1,15 @@ Changes with Apache 1.3b6 + + *) Making the hard-coded cross-module function call mime_find_ct() (from + mod_proxy to mod_mime) obsolete by making sure the API hook for MIME type + checking is really called even for proxy requests except for URLs with + HTTP schemes (because there we can optimize by not running the type + checking hooks due to the fact that the proxy gets the MIME Content-type + from the remote host later). This change cleans up mod_mime by removing + the ugly export kludge, makes the one-liner file mod_mime.h obsolete, and + especially unbundles mod_proxy and mod_mime. This way they both now can + be compiled as shared objects and are no longer tied together. + [Ralf S. Engelschall] *) util.c cleanup and speedup. [Dean Gaudet] 1.112 +8 -5 apache-1.3/src/main/http_request.c Index: http_request.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_request.c,v retrieving revision 1.111 retrieving revision 1.112 diff -u -r1.111 -r1.112 --- http_request.c1998/03/06 09:37:06 1.111 +++ http_request.c1998/03/14 12:22:07 1.112 @@ -1127,11 +1127,14 @@ break; } -if (!r->proxyreq) - if ((access_status = find_types(r)) != 0) { - decl_die(access_status, "find types", r); - return; - } +if (! (r->proxyreq +&& r->parsed_uri.scheme != NULL +&& strcmp(r->parsed_uri.scheme, "http") == 0) ) { + if ((access_status = find_types(r)) != 0) { + decl_die(access_status, "find types", r); + return; + } +} if ((access_status = run_fixups(r)) != 0) { die(access_status, r); 1.50 +0 -2 apache-1.3/src/modules/proxy/proxy_ftp.c Index: proxy_ftp.c === RCS file: /export/home/cvs/apache-1.3/src/modules/proxy/proxy_ftp.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -r1.49 -r1.50 --- proxy_ftp.c 1998/02/22 21:35:31 1.49 +++ proxy_ftp.c 1998/03/14 12:22:08 1.50 @@ -55,7 +55,6 @@ #include "mod_proxy.h" #include "http_main.h" -#include "../standard/mod_mime.h" DEF_Explain @@ -929,7 +928,6 @@ if (parms[0] == 'd') proxy_add_header(resp_hdrs, "Content-Type", "text/html", HDR_REP); else { - mime_find_ct(r); if (r->content_type != NULL) { proxy_add_header(resp_hdrs, "Content-Type", r->content_type, HDR_REP); 1.36 +0 -6 apache-1.3/src/modules/standard/mod_mime.c Index: mod_mime.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_mime.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- mod_mime.c1998/03/13 19:20:40 1.35 +++ mod_mime.c1998/03/14 12:22:09 1.36 @@ -237,7 +237,6 @@ cfg_closefile(f); } -/* note that the proxy module uses
cvs commit: apache-1.3/src CHANGES
rse 98/03/13 09:03:19 Modified:.STATUS src CHANGES Log: The corresponding changelog entries for the added Port check. Revision ChangesPath 1.187 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.186 retrieving revision 1.187 diff -u -r1.186 -r1.187 --- STATUS1998/03/13 07:52:22 1.186 +++ STATUS1998/03/13 17:03:15 1.187 @@ -83,6 +83,7 @@ * Ralf's mod_so changes to keep track of loaded modules ourself. * Ralf's support for building shared objects even for library-style modules * Performance improvements to invoke_handler(). +* Ben Hyde's check to make sure the "Port" range is valid Available Patches: 1.705 +3 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.704 retrieving revision 1.705 diff -u -r1.704 -r1.705 --- CHANGES 1998/03/13 16:21:27 1.704 +++ CHANGES 1998/03/13 17:03:17 1.705 @@ -1,5 +1,8 @@ Changes with Apache 1.3b6 + *) Add check to the "Port" directive to make sure the specified + port is in the appropriate range. [Ben Hyde] + *) Performance improvements to invoke_handler(). [Dmitry Khrustalev <[EMAIL PROTECTED]>]
cvs commit: apache-1.3/src/main http_core.c
rse 98/03/13 08:54:21 Modified:src/main http_core.c Log: Make sure the given argument to "Port" is in the appropriate range. Submitted by: Ben Hyde Reviewed by: Ralf S. Engelschall Revision ChangesPath 1.168 +9 -2 apache-1.3/src/main/http_core.c Index: http_core.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v retrieving revision 1.167 retrieving revision 1.168 diff -u -r1.167 -r1.168 --- http_core.c 1998/03/13 16:49:41 1.167 +++ http_core.c 1998/03/13 16:54:15 1.168 @@ -1286,9 +1286,16 @@ static const char *server_port (cmd_parms *cmd, void *dummy, char *arg) { const char *err = check_cmd_context(cmd, NOT_IN_DIR_LOC_FILE|NOT_IN_LIMIT); -if (err != NULL) return err; +int port; -cmd->server->port = atoi (arg); +if (err != NULL) + return err; +port = atoi(arg); +if (port <= 0 || port >= 65536) /* 65536 == 1<<16 */ + return pstrcat(cmd->temp_pool, "The port number \"", arg, +"\" is outside the appropriate range (i.e. 1..65535).", +NULL); +cmd->server->port = port; return NULL; }
cvs commit: apache-1.3/src/include hide.h
rse 98/03/13 08:49:45 Modified:src/main http_core.c src/include hide.h Log: More statics which reduce the global exported symbol table. Submitted by: Ben Hyde Revision ChangesPath 1.167 +82 -52apache-1.3/src/main/http_core.c Index: http_core.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v retrieving revision 1.166 retrieving revision 1.167 diff -u -r1.166 -r1.167 --- http_core.c 1998/03/13 13:28:16 1.166 +++ http_core.c 1998/03/13 16:49:41 1.167 @@ -683,7 +683,7 @@ return NULL; } -const char *set_access_name (cmd_parms *cmd, void *dummy, char *arg) +static const char *set_access_name (cmd_parms *cmd, void *dummy, char *arg) { void *sconf = cmd->server->module_config; core_server_config *conf = get_module_config (sconf, &core_module); @@ -695,7 +695,7 @@ return NULL; } -const char *set_document_root (cmd_parms *cmd, void *dummy, char *arg) +static const char *set_document_root (cmd_parms *cmd, void *dummy, char *arg) { void *sconf = cmd->server->module_config; core_server_config *conf = get_module_config (sconf, &core_module); @@ -716,7 +716,7 @@ return NULL; } -const char *set_error_document (cmd_parms *cmd, core_dir_config *conf, +static const char *set_error_document (cmd_parms *cmd, core_dir_config *conf, char *line) { int error_number, index_number, idx500; @@ -759,7 +759,7 @@ * discards as harmless. Cheesy, but it works. */ -const char *set_override (cmd_parms *cmd, core_dir_config *d, const char *l) +static const char *set_override (cmd_parms *cmd, core_dir_config *d, const char *l) { char *w; @@ -793,7 +793,7 @@ return NULL; } -const char *set_options (cmd_parms *cmd, core_dir_config *d, const char *l) +static const char *set_options (cmd_parms *cmd, core_dir_config *d, const char *l) { allow_options_t opt; int first = 1; @@ -876,7 +876,7 @@ return NULL; } -const char *limit_section (cmd_parms *cmd, void *dummy, const char *arg) +static const char *limit_section (cmd_parms *cmd, void *dummy, const char *arg) { const char *limited_methods = getword(cmd->pool,&arg,'>'); int limited = 0; @@ -904,7 +904,7 @@ return NULL; } -const char *endlimit_section (cmd_parms *cmd, void *dummy, void *dummy2) +static const char *endlimit_section (cmd_parms *cmd, void *dummy, void *dummy2) { if (cmd->limited == -1) return " unexpected"; @@ -953,7 +953,7 @@ return cmd->end_token; } -const char *dirsection (cmd_parms *cmd, void *dummy, const char *arg) +static const char *dirsection (cmd_parms *cmd, void *dummy, const char *arg) { const char *errmsg; char *endp = strrchr (arg, '>'); @@ -1014,7 +1014,7 @@ return NULL; } -const char *urlsection (cmd_parms *cmd, void *dummy, const char *arg) +static const char *urlsection (cmd_parms *cmd, void *dummy, const char *arg) { const char *errmsg; char *endp = strrchr (arg, '>'); @@ -1070,7 +1070,7 @@ return NULL; } -const char *filesection (cmd_parms *cmd, core_dir_config *c, const char *arg) +static const char *filesection (cmd_parms *cmd, core_dir_config *c, const char *arg) { const char *errmsg; char *endp = strrchr (arg, '>'); @@ -1137,11 +1137,11 @@ * Extra (redundant, unpaired) directives are * simply silently ignored. */ -const char *end_ifmod (cmd_parms *cmd, void *dummy) { +static const char *end_ifmod (cmd_parms *cmd, void *dummy) { return NULL; } -const char *start_ifmod (cmd_parms *cmd, void *dummy, char *arg) +static const char *start_ifmod (cmd_parms *cmd, void *dummy, char *arg) { char *endp = strrchr (arg, '>'); char l[MAX_STRING_LEN]; @@ -1173,7 +1173,7 @@ /* httpd.conf commands... beginning with the business */ -const char *virtualhost_section (cmd_parms *cmd, void *dummy, char *arg) +static const char *virtualhost_section (cmd_parms *cmd, void *dummy, char *arg) { server_rec *main_server = cmd->server, *s; const char *errmsg; @@ -1222,7 +1222,7 @@ return errmsg; } -const char *set_server_alias(cmd_parms *cmd, void *dummy, const char *arg) +static const char *set_server_alias(cmd_parms *cmd, void *dummy, const char *arg) { if (!cmd->server->names) return "ServerAlias only used in "; @@ -1237,7 +1237,7 @@ return NULL; } -const char *add_module_command (cmd_parms *cmd, void *dummy, char *arg) +static const char *add_module_command (cmd_parms *cmd, void *dummy, char *arg) { const char *err = check_cmd_context(cmd, GLOBAL_ONLY); if (
cvs commit: apache-1.3/src CHANGES
rse 98/03/13 08:21:29 Modified:src CHANGES Log: OK, FINISHED! Now we support building modules as shared objects on all major platforms. Puhhh Revision ChangesPath 1.704 +5 -4 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.703 retrieving revision 1.704 diff -u -r1.703 -r1.704 --- CHANGES 1998/03/13 07:49:19 1.703 +++ CHANGES 1998/03/13 16:21:27 1.704 @@ -39,10 +39,11 @@ [Tony Fincg <[EMAIL PROTECTED]>] PR#1925 *) Various improvements to the configuration and build support for compiling - modules as shared objects. Especially Solaris 2.x, SunOS 4.1 and IRIX - support with GCC and vendor compilers was added. This way shared object - support is now provided out-of-the-box for FreeBSD, Linux, Solaris, SunOS - and IRIX. [Ralf S. Engelschall] + modules as shared objects. Especially Solaris 2.x, SunOS 4.1, IRIX and + OSF1 support with GCC and vendor compilers was added. This way shared + object support is now provided out-of-the-box for FreeBSD, Linux, + Solaris, SunOS, IRIX and OSF1. In short: On all major platforms! + [Ralf S. Engelschall] *) Minor cleanup in http_main -- split QNX and OS2 specific "mmap" scoreboard code into separate #defines -- USE_POSIX_SCOREBOARD
cvs commit: apache-1.3/src/os/unix os.h
rse 98/03/13 08:15:42 Modified:src Configure Configuration.tmpl src/os/unix os.h Log: And another nice platform where we support shared objects: OSF1 (BTW: compares to the linker nightmare I had under AIX today the OSF1 platform is really a pleasure) Revision ChangesPath 1.206 +8 -0 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.205 retrieving revision 1.206 diff -u -r1.205 -r1.206 --- Configure 1998/03/13 07:27:54 1.205 +++ Configure 1998/03/13 16:15:39 1.206 @@ -733,6 +733,14 @@ LDFLAGS_SHLIB="-shared" LDFLAGS_SHLIB_EXPORT="" ;; +*-dec-osf*) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/cc|cc ) CFLAGS_SHLIB="" ;; +esac +LDFLAGS_SHLIB="-shared -expect_unresolved '*' -msym -s" +LDFLAGS_SHLIB_EXPORT="" +;; esac fi 1.87 +14 -7 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.86 retrieving revision 1.87 diff -u -r1.86 -r1.87 --- Configuration.tmpl1998/03/13 09:57:14 1.86 +++ Configuration.tmpl1998/03/13 16:15:40 1.87 @@ -63,13 +63,20 @@ # # The Configure script currently has only limited built-in # knowledge on how to compile shared objects because this is -# heavily platform-dependend. Currently only Linux, FreeBSD, -# Solaris, SunOS and IRIX are supported out-of-the-box. For other -# platforms where you want to use the `SharedModule' directive -# you first have to make sure it supports the dlopen() system -# call and then you have to provide the appropriate compiler and -# linker flags here to create the shared object files on your -# particular platform. +# heavily platform-dependend. The current state is this: +# +# Out-of-the-box supported platforms: +# Linux, FreeBSD, Solaris, SunOS, IRIX, OSF1 +# +# Entirely unsupported platforms (no dlopen-style API): +# HP-UX, UnixWare, Ultrix +# +# For other platforms where you want to use the `SharedModule' +# directive you first have to make sure it supports the dlopen() +# system call and then you have to provide the appropriate +# compiler and linker flags here to create the shared object +# files on your particular platform. +# # #CFLAGS_SHLIB= #LDFLAGS_SHLIB= 1.14 +2 -2 apache-1.3/src/os/unix/os.h Index: os.h === RCS file: /export/home/cvs/apache-1.3/src/os/unix/os.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- os.h 1998/03/06 13:18:44 1.13 +++ os.h 1998/03/13 16:15:41 1.14 @@ -88,7 +88,7 @@ */ #if defined(LINUX) || defined(__FreeBSD__) || defined(SOLARIS2) || \ -defined(__bsdi__) || defined(IRIX) || defined(SVR4) +defined(__bsdi__) || defined(IRIX) || defined(SVR4) || defined(OSF1) # define HAVE_DLFCN_H 1 #endif @@ -97,7 +97,7 @@ #endif /* OSes that don't support dlopen */ -#if defined(UW) || defined(ULTRIX) +#if defined(UW) || defined(ULTRIX) || defined(HPUX) || defined(HPUX10) # define NO_DL #endif
cvs commit: apache-1.3/src/modules/standard mod_so.c
rse 98/03/13 05:28:21 Modified:src/include hide.h src/main alloc.c http_core.c http_main.c http_config.c src/modules/standard mod_so.c Log: Shrink list of global symbols by making more stuff static which currently is global without need. Revision ChangesPath 1.9 +0 -8 apache-1.3/src/include/hide.h Index: hide.h === RCS file: /export/home/cvs/apache-1.3/src/include/hide.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- hide.h1998/03/13 12:06:58 1.8 +++ hide.h1998/03/13 13:28:13 1.9 @@ -109,22 +109,17 @@ #define action_module AP_action_module #define agent_log_module AP_agent_log_module #define alias_module AP_alias_module -#define alloc_mutexAP_alloc_mutex #define anon_auth_module AP_anon_auth_module #define asis_moduleAP_asis_module #define auth_moduleAP_auth_module #define autoindex_module AP_autoindex_module -#define block_freelist AP_block_freelist #define cern_meta_module AP_cern_meta_module #define cgi_module AP_cgi_module #define config_log_module AP_config_log_module -#define core_cmds AP_core_cmds -#define core_handlers AP_core_handlers #define core_moduleAP_core_module #define day_snames AP_day_snames #define db_auth_module AP_db_auth_module #define dbm_auth_moduleAP_dbm_auth_module -#define default_parms AP_default_parms #define digest_module AP_digest_module #define dir_module AP_dir_module #define dummy_mutexAP_dummy_mutex @@ -139,7 +134,6 @@ #define mime_moduleAP_mime_module #define month_snames AP_month_snames #define negotiation_module AP_negotiation_module -#define one_processAP_one_process #define prelinked_modules AP_prelinked_modules #define preloaded_modules AP_preloaded_modules #define proxy_module AP_proxy_module @@ -148,9 +142,7 @@ #define rfc1413_timeoutAP_rfc1413_timeout #define scoreboard_image AP_scoreboard_image #define setenvif_moduleAP_setenvif_module -#define so_cmdsAP_so_cmds #define so_module AP_so_module -#define spawn_mutexAP_spawn_mutex #define speling_module AP_speling_module #define status_module AP_status_module #define suexec_enabled AP_suexec_enabled 1.76 +3 -3 apache-1.3/src/main/alloc.c Index: alloc.c === RCS file: /export/home/cvs/apache-1.3/src/main/alloc.c,v retrieving revision 1.75 retrieving revision 1.76 diff -u -r1.75 -r1.76 --- alloc.c 1998/03/09 22:42:58 1.75 +++ alloc.c 1998/03/13 13:28:15 1.76 @@ -159,9 +159,9 @@ } h; }; -union block_hdr *block_freelist = NULL; -mutex *alloc_mutex = NULL; -mutex *spawn_mutex = NULL; +static union block_hdr *block_freelist = NULL; +static mutex *alloc_mutex = NULL; +static mutex *spawn_mutex = NULL; #ifdef POOL_DEBUG static char *known_stack_point; static int stack_direction; 1.166 +2 -2 apache-1.3/src/main/http_core.c Index: http_core.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v retrieving revision 1.165 retrieving revision 1.166 diff -u -r1.165 -r1.166 --- http_core.c 1998/03/02 06:51:07 1.165 +++ http_core.c 1998/03/13 13:28:16 1.166 @@ -1815,7 +1815,7 @@ * The AllowOverride of Fileinfo allows webmasters to turn it off */ -command_rec core_cmds[] = { +static command_rec core_cmds[] = { /* Old access config file commands */ @@ -2144,7 +2144,7 @@ return OK; } -handler_rec core_handlers[] = { +static handler_rec core_handlers[] = { { "*/*", default_handler }, { NULL } }; 1.301 +1 -1 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.300 retrieving revision 1.301 diff -u -r1.300 -r1.301 --- http_main.c 1998/03/08 04:25:57 1.300 +++ http_main.c 1998/03/13 13:28:17 1.301 @@ -284,7 +284,7 @@ * Continue through and
cvs commit: apache-1.3/src/ap Makefile.tmpl
rse 98/03/13 04:44:47 Modified:src/main Makefile.tmpl src/ap Makefile.tmpl Log: Make sure definitions are not in the middle of the target section (which confuses some Make variants) and slightly sort the objects file list for cosmetic issues. Revision ChangesPath 1.17 +7 -6 apache-1.3/src/main/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/main/Makefile.tmpl,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- Makefile.tmpl 1998/03/02 07:05:55 1.16 +++ Makefile.tmpl 1998/03/13 12:44:46 1.17 @@ -9,15 +9,16 @@ LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) INCDIR=../include -OBJS= alloc.o http_main.o http_core.o http_config.o http_request.o \ - http_log.o http_protocol.o rfc1413.o util.o util_script.o buff.o \ - md5c.o util_md5.o http_bprintf.o util_date.o util_uri.o \ - fnmatch.o http_vhost.o +LIB= libmain.a + +OBJS= alloc.o buff.o \ + http_bprintf.o http_config.o http_core.o http_log.o \ + http_main.o http_protocol.o http_request.o http_vhost.o \ + util.o util_date.o util_script.o util_uri.o util_md5.o \ + md5c.o rfc1413.o fnmatch.o .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< - -LIB= libmain.a all: $(LIB) 1.15 +2 -2 apache-1.3/src/ap/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/ap/Makefile.tmpl,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- Makefile.tmpl 1998/02/28 10:31:54 1.14 +++ Makefile.tmpl 1998/03/13 12:44:47 1.15 @@ -6,8 +6,8 @@ LIB=libap.a -OBJS=ap_signal.o ap_slack.o ap_snprintf.o ap_strings.o ap_cpystrn.o \ - ap_execve.o +OBJS=ap_execve.o ap_cpystrn.o ap_signal.o \ + ap_slack.o ap_snprintf.o ap_strings.o .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $<
cvs commit: apache-1.3/src/modules/example mod_example.c
rse 98/03/13 04:07:00 Modified:src/include hide.h src/modules/example mod_example.c Log: mod_example unnecessarily exports its command and handler structures Revision ChangesPath 1.8 +0 -2 apache-1.3/src/include/hide.h Index: hide.h === RCS file: /export/home/cvs/apache-1.3/src/include/hide.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- hide.h1998/03/12 13:52:06 1.7 +++ hide.h1998/03/13 12:06:58 1.8 @@ -129,8 +129,6 @@ #define dir_module AP_dir_module #define dummy_mutexAP_dummy_mutex #define env_module AP_env_module -#define example_cmds AP_example_cmds -#define example_handlers AP_example_handlers #define example_module AP_example_module #define expires_module AP_expires_module #define headers_module AP_headers_module 1.26 +2 -2 apache-1.3/src/modules/example/mod_example.c Index: mod_example.c === RCS file: /export/home/cvs/apache-1.3/src/modules/example/mod_example.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- mod_example.c 1998/03/12 10:29:00 1.25 +++ mod_example.c 1998/03/13 12:06:59 1.26 @@ -1055,7 +1055,7 @@ /* * List of directives specific to our module. */ -command_rec example_cmds[] = +static command_rec example_cmds[] = { { "Example", /* directive name */ @@ -1086,7 +1086,7 @@ * if a content-handler returns anything except DECLINED, no other * content-handlers will be called. */ -handler_rec example_handlers[] = +static handler_rec example_handlers[] = { {"example-handler", example_handler}, {NULL}
cvs commit: apache-1.3/src Configuration.tmpl
rse 98/03/13 01:57:15 Modified:src Configuration.tmpl Log: More detailed documentation to make sure the user knows how to enable shared object support and to avoid PR's because they had used SharedModule but not included mod_so itself :-( Revision ChangesPath 1.86 +8 -3 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.85 retrieving revision 1.86 diff -u -r1.85 -r1.86 --- Configuration.tmpl1998/03/12 18:17:14 1.85 +++ Configuration.tmpl1998/03/13 09:57:14 1.86 @@ -54,17 +54,22 @@ # Makefile configuration (Shared Object support) # # There is experimental support for compiling Apache Modules as -# shared objects. This feature can be enabled for each module +# shared objects and loading them under runtime without +# recompilation when the module mod_so is enabled (see below). +# The shared object feature then can be enabled for each module # individually by replacing the `AddModule' command of the # corresponding module line below with `SharedModule' and -# changing the filename extension from `.o' to `.so'. +# changing the filename extension from `.o' to `.so'. # # The Configure script currently has only limited built-in # knowledge on how to compile shared objects because this is # heavily platform-dependend. Currently only Linux, FreeBSD, # Solaris, SunOS and IRIX are supported out-of-the-box. For other # platforms where you want to use the `SharedModule' directive -# you have to provide the appropriate flags here. +# you first have to make sure it supports the dlopen() system +# call and then you have to provide the appropriate compiler and +# linker flags here to create the shared object files on your +# particular platform. # #CFLAGS_SHLIB= #LDFLAGS_SHLIB=
cvs commit: apache-1.3/src/support Makefile.tmpl
rse 98/03/13 00:15:27 Modified:src/support Makefile.tmpl Log: Fix support Makefile: - OBJS needs to be declared manually here, because Configure does not set it but our `$(OBJS): Makefile' dependency line needs OBJS to be defined. If not at least HP/UX make complains. - consistently use $(LDFLAGS) and $(LIBS) even if not really needed for rotatelogs - move TARGETS define in front of the targets itsself because some Make variants don't like defines in the middle of the targets section Revision ChangesPath 1.10 +5 -3 apache-1.3/src/support/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/support/Makefile.tmpl,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- Makefile.tmpl 1998/02/22 04:37:20 1.9 +++ Makefile.tmpl 1998/03/13 08:15:26 1.10 @@ -9,11 +9,13 @@ LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS) -L../ap INCDIR=../include +TARGETS=htpasswd htdigest rotatelogs logresolve + +OBJS=htpasswd.o htdigest.o rotatelogs.o logresolve.o + .c.o: $(CC) -c $(CFLAGS) $(INCLUDES) $< -TARGETS=htpasswd htdigest rotatelogs logresolve - all: $(TARGETS) htpasswd: htpasswd.o @@ -23,7 +25,7 @@ $(CC) $(CFLAGS) htdigest.o -o htdigest $(LDFLAGS) $(LIBS) rotatelogs: rotatelogs.o - $(CC) $(INCLUDES) $(CFLAGS) rotatelogs.o -o rotatelogs + $(CC) $(INCLUDES) $(CFLAGS) rotatelogs.o -o rotatelogs $(LDFLAGS) $(LIBS) logresolve: logresolve.o $(CC) $(INCLUDES) $(CFLAGS) logresolve.o -o logresolve $(LDFLAGS) $(LIBS)
cvs commit: apache-1.3/src/modules/proxy Makefile.tmpl
rse 98/03/12 23:27:58 Modified:.STATUS src CHANGES Configure src/modules/proxy Makefile.tmpl Log: Support for building library-based modules (mod_proxy) as shared objects and support for the situation where all modules of a modules/ subdir are build as shared objects (mod_example). Revision ChangesPath 1.185 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.184 retrieving revision 1.185 diff -u -r1.184 -r1.185 --- STATUS1998/03/12 11:30:07 1.184 +++ STATUS1998/03/13 07:27:51 1.185 @@ -79,6 +79,7 @@ * Fix for rputs() which did not calculate r->sent_bodyct properly. PR#1900 * Don't tweak TZ envvar if the user has specified an explicit one. PR#1888 * Ralf's mod_so changes to keep track of loaded modules ourself. +* Ralf's support for building shared objects even for library-style modules Available Patches: 1.702 +7 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.701 retrieving revision 1.702 diff -u -r1.701 -r1.702 --- CHANGES 1998/03/12 10:28:52 1.701 +++ CHANGES 1998/03/13 07:27:53 1.702 @@ -1,5 +1,12 @@ Changes with Apache 1.3b6 + *) Added support for building shared objects even for library-style modules + (which are build from more than one object file). This now provides the + ability to build mod_proxy as a shared object module. Additionally + modules like mod_example are now also supported for shared object + building because the generated Makefiles now no longer assume there is at + least one statically linked module. [Ralf S. Engelschall] + *) API: Clarify usage of content_type, handler, content_encoding, content_language and content_languages fields in request_rec. They must always be lowercased; and the strings pointed to shouldn't 1.205 +41 -15apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.204 retrieving revision 1.205 diff -u -r1.204 -r1.205 --- Configure 1998/03/11 23:58:03 1.204 +++ Configure 1998/03/13 07:27:54 1.205 @@ -926,6 +926,21 @@ SEEN[pp[2]] = 1 } }'` +MODDIRS_NO_SO=`awk < $tmpfile ' + ($1 == "Module" && $3 ~ /^modules\//) { + split ($3, pp, "/") + if (! SEEN[pp[2]]) { + printf "%s ", pp[2] + SEEN[pp[2]] = 1 + } + } + (($1 == "AddModule") && $2 ~ /^modules\//) { + split ($2, pp, "/") + if (! SEEN[pp[2]]) { + printf "%s ", pp[2] + SEEN[pp[2]] = 1 + } + }'` # # Now autoconfigure each of the modules specified by AddModule. @@ -1061,6 +1076,11 @@ do if [ -f modules/$moddir/Makefile.tmpl ] ; then AUTODIRS="$AUTODIRS modules/$moddir" + fi +done +for moddir in $MODDIRS_NO_SO +do + if [ -f modules/$moddir/Makefile.tmpl ] ; then AUTOLIBS="$AUTOLIBS modules/$moddir/lib$moddir.a" fi done @@ -1237,28 +1257,32 @@ INCDIR=../../include EOF if [ -f $moddir/Makefile.libdir ]; then - # it's responsible for the rest of its Makefile - : - else basedir=`echo $moddir | sed '[EMAIL PROTECTED]/]*/@@g'` awk >> $moddir/Makefile < $tmpfile ' - BEGIN { - printf "OBJS=" + ($2 ~ /^modules\/'$basedir'\//) { + split($2, pp, "/"); + split(pp[3], parts, "."); + libext=parts[2]; } + END { + printf "LIBEXT=%s\n", libext; + }' + # it's responsible for the rest of its Makefile... + else + basedir=`echo $moddir | sed '[EMAIL PROTECTED]/]*/@@g'` + OBJS=`awk < $tmpfile ' ($1 == "Module" && $3 ~ /^modules\/'$basedir'\//) { split ($3, pp, "/") printf "%s ", pp[3] } - END { - printf "\n" - }' - - $CAT << 'EOF' >> $moddir/Makefile -
cvs commit: apache-1.3/src/modules/standard mod_speling.c
rse 98/03/12 10:17:16 Modified:src Configuration.tmpl src/modules/standard mod_speling.c Log: Fix typos and some cosmetics Revision ChangesPath 1.85 +10 -7 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.84 retrieving revision 1.85 diff -u -r1.84 -r1.85 --- Configuration.tmpl1998/03/11 09:57:25 1.84 +++ Configuration.tmpl1998/03/12 18:17:14 1.85 @@ -14,7 +14,7 @@ # # Makefile options, such as CC=gcc, etc... # -# Rules, distinquished by having "Rule" at the front. These are used to +# Rules, distinguished by having "Rule" at the front. These are used to # control Configure's behavior as far as how to create Makefile. # # Module selection lines, distinguished by having 'AddModule' at the front. @@ -207,7 +207,7 @@ ## The Info module displays configuration information for the server and ## all included modules. It's very useful for debugging. -# AddModule modules/standard/mod_info.o +# AddModule modules/standard/mod_info.o ## mod_include translates server-side include (SSI) statements in text files. ## mod_autoindex handles requests for directories which have no index file @@ -219,7 +219,7 @@ AddModule modules/standard/mod_dir.o AddModule modules/standard/mod_cgi.o -## The asis module implemented ".asis" file types, which allow the embedding +## The asis module implements ".asis" file types, which allow the embedding ## of HTTP headers at the beginning of the document. mod_imap handles internal ## imagemaps (no more cgi-bin/imagemap/!). mod_actions is used to specify ## CGI scripts which act as "handlers" for particular files, for example to @@ -233,7 +233,7 @@ ## URL translation modules. ## -## The Speling module attemps to correct mispellings of URLs that +## The Speling module attempts to correct misspellings of URLs that ## users might have entered, namely by checking capitalizations ## or by allowing up to one misspelling (character insertion / omission / ## transposition/typo). This catches the majority of misspelled requests. @@ -306,7 +306,7 @@ ## Miscellaneous modules ## -## mod_usertrack.c is the new name for mod_cookies.c. This module +## mod_usertrack is the new name for mod_cookies. This module ## uses Netscape cookies to automatically construct and log ## click-trails from Netscape cookies, or compatible clients who ## aren't coming in via proxy. @@ -335,7 +335,10 @@ # AddModule modules/standard/mod_unique_id.o -## mod_so lets you add modules to Apache without recompiling. This -## is experimental at this stage. +## mod_so lets you add modules to Apache without recompiling. +## This is an experimental feature at this stage and only supported +## on a subset of the platforms we generally support. +## Don't change this entry to a 'SharedModule' variant (Bootstrapping!) # AddModule modules/standard/mod_so.o + 1.15 +2 -2 apache-1.3/src/modules/standard/mod_speling.c Index: mod_speling.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_speling.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- mod_speling.c 1998/02/03 17:49:02 1.14 +++ mod_speling.c 1998/03/12 18:17:15 1.15 @@ -59,8 +59,8 @@ /* mod_speling.c - by Alexei Kosut <[EMAIL PROTECTED]> June, 1996 * - * This module is transparent, and simple. It attemps to correct - * mispellings of URLs that users might have entered, namely by checking + * This module is transparent, and simple. It attempts to correct + * misspellings of URLs that users might have entered, namely by checking * capitalizations. If it finds a match, it sends a redirect. * * 08-Aug-1997 <[EMAIL PROTECTED]>
cvs commit: apache-1.3/src/include hide.h
rse 98/03/12 05:52:06 Modified:src/helpers UpdateHide src/include hide.h Log: Fix UpdateHide: the log_error matches aplog_error in our exclusion list because we have forgotten to bind the regex to its boundaries. Revision ChangesPath 1.7 +1 -1 apache-1.3/src/helpers/UpdateHide Index: UpdateHide === RCS file: /export/home/cvs/apache-1.3/src/helpers/UpdateHide,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- UpdateHide1998/03/04 12:48:12 1.6 +++ UpdateHide1998/03/12 13:52:05 1.7 @@ -141,7 +141,7 @@ # skip any compiler- or system-private symbols next if ($name !~ m|^[a-zA-Z]+|); # skip any symbols in our exclusion list -next if (grep(/$name/, @excluded)); +next if (grep(/^$name$/, @excluded)); # insert the symbol into our lists $SB{$name}++ if $type eq 'B'; 1.7 +1 -0 apache-1.3/src/include/hide.h Index: hide.h === RCS file: /export/home/cvs/apache-1.3/src/include/hide.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- hide.h1998/03/12 10:35:05 1.6 +++ hide.h1998/03/12 13:52:06 1.7 @@ -347,6 +347,7 @@ #define limit_section AP_limit_section #define location_walk AP_location_walk #define log_assert AP_log_assert +#define log_error AP_log_error #define log_pidAP_log_pid #define log_printf AP_log_printf #define log_reason AP_log_reason
cvs commit: apache-1.3/src/modules/standard mod_mime.c
rse 98/03/12 05:37:52 Modified:src/modules/standard mod_mime.c Log: Just a few cosmetics while I'm poking around in this modules to find a better solution to our mime_find_cf() cross-call problem with mod_proxy... Revision ChangesPath 1.34 +11 -9 apache-1.3/src/modules/standard/mod_mime.c Index: mod_mime.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_mime.c,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- mod_mime.c1998/03/12 11:13:25 1.33 +++ mod_mime.c1998/03/12 13:37:51 1.34 @@ -114,7 +114,8 @@ return new; } -static const char *add_type(cmd_parms *cmd, mime_dir_config * m, char *ct, char *ext) +static const char *add_type(cmd_parms *cmd, mime_dir_config * m, char *ct, +char *ext) { if (*ext == '.') ++ext; @@ -173,10 +174,12 @@ "a language (e.g., fr), followed by one or more file extensions"}, {"AddHandler", add_handler, NULL, OR_FILEINFO, ITERATE2, "a handler name followed by one or more file extensions"}, - {"ForceType", set_string_slot_lower, (void *) XtOffsetOf(mime_dir_config, type), - OR_FILEINFO, TAKE1, "a media type"}, -{"SetHandler", set_string_slot_lower, (void *) XtOffsetOf(mime_dir_config, handler), - OR_FILEINFO, TAKE1, "a handler name"}, +{"ForceType", set_string_slot_lower, + (void *)XtOffsetOf(mime_dir_config, type), OR_FILEINFO, TAKE1, + "a media type"}, +{"SetHandler", set_string_slot_lower, + (void *)XtOffsetOf(mime_dir_config, handler), OR_FILEINFO, TAKE1, + "a handler name"}, {"TypesConfig", set_types_config, NULL, RSRC_CONF, TAKE1, "the MIME types config file"}, {NULL} @@ -248,7 +251,6 @@ } /* TM -- FIXME - * if r->filename does not contain a '/', the following passes a null * pointer to getword, causing a SEGV .. */ @@ -332,11 +334,11 @@ { STANDARD_MODULE_STUFF, init_mime, /* initializer */ -create_mime_dir_config, -merge_mime_dir_configs, +create_mime_dir_config, /* dir config creator */ +merge_mime_dir_configs, /* dir config merger */ NULL, /* server config */ NULL, /* merge server config */ -mime_cmds, +mime_cmds, /* command table */ NULL, /* handlers */ NULL, /* filename translation */ NULL, /* check_user_id */
cvs commit: apache-1.3/src CHANGES Configuration.tmpl Configure
rse 98/03/11 01:57:28 Modified:src CHANGES Configuration.tmpl Configure Log: And another system which provides the dlopen()-style API for loadind shared objects is now supported ;-): IRIX Revision ChangesPath 1.700 +4 -4 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.699 retrieving revision 1.700 diff -u -r1.699 -r1.700 --- CHANGES 1998/03/10 16:40:44 1.699 +++ CHANGES 1998/03/11 09:57:23 1.700 @@ -18,10 +18,10 @@ [Tony Fincg <[EMAIL PROTECTED]>] PR#1925 *) Various improvements to the configuration and build support for compiling - modules as shared objects. Especially Solaris 2.x and SunOS 4.1 support - with GCC and WorkShop Compilers 4.2 was added. This way shared object - support is now provided out-of-the-box for FreeBSD, Linux, Solaris and - SunOS. [Ralf S. Engelschall] + modules as shared objects. Especially Solaris 2.x, SunOS 4.1 and IRIX + support with GCC and vendor compilers was added. This way shared object + support is now provided out-of-the-box for FreeBSD, Linux, Solaris, SunOS + and IRIX. [Ralf S. Engelschall] *) Minor cleanup in http_main -- split QNX and OS2 specific "mmap" scoreboard code into separate #defines -- USE_POSIX_SCOREBOARD 1.84 +1 -1 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.83 retrieving revision 1.84 diff -u -r1.83 -r1.84 --- Configuration.tmpl1998/03/10 16:42:27 1.83 +++ Configuration.tmpl1998/03/11 09:57:25 1.84 @@ -62,7 +62,7 @@ # The Configure script currently has only limited built-in # knowledge on how to compile shared objects because this is # heavily platform-dependend. Currently only Linux, FreeBSD, -# Solaris and SunOS are supported out-of-the-box. For other +# Solaris, SunOS and IRIX are supported out-of-the-box. For other # platforms where you want to use the `SharedModule' directive # you have to provide the appropriate flags here. # 1.202 +20 -0 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.201 retrieving revision 1.202 diff -u -r1.201 -r1.202 --- Configure 1998/03/10 16:40:45 1.201 +++ Configure 1998/03/11 09:57:25 1.202 @@ -697,6 +697,26 @@ LDFLAGS_SHLIB="-assert pure-text" LDFLAGS_SHLIB_EXPORT="" ;; +*-sgi-irix32) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/cc|cc ) CFLAGS_SHLIB="-KPIC" ;; +esac +if [ "$RULE_IRIXN32" = "yes" ]; then +LDFLAGS_SHLIB="-n32 -shared" +else +LDFLAGS_SHLIB="-shared" +fi +LDFLAGS_SHLIB_EXPORT="" +;; +*-sgi-irix) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/cc|cc ) CFLAGS_SHLIB="-KPIC" ;; +esac +LDFLAGS_SHLIB="-shared" +LDFLAGS_SHLIB_EXPORT="" +;; esac fi
cvs commit: apache-1.3/src Configuration.tmpl
rse 98/03/10 08:42:27 Modified:src Configuration.tmpl Log: Update comment for SunOS shared object support. Revision ChangesPath 1.83 +4 -4 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.82 retrieving revision 1.83 diff -u -r1.82 -r1.83 --- Configuration.tmpl1998/03/09 16:47:08 1.82 +++ Configuration.tmpl1998/03/10 16:42:27 1.83 @@ -61,10 +61,10 @@ # # The Configure script currently has only limited built-in # knowledge on how to compile shared objects because this is -# heavily platform-dependend. Currently only Linux, FreeBSD and -# Solaris are supported out-of-the-box. For other platforms where -# you want to use the `SharedModule' directive you have to -# provide the appropriate flags here. +# heavily platform-dependend. Currently only Linux, FreeBSD, +# Solaris and SunOS are supported out-of-the-box. For other +# platforms where you want to use the `SharedModule' directive +# you have to provide the appropriate flags here. # #CFLAGS_SHLIB= #LDFLAGS_SHLIB=
cvs commit: apache-1.3/src CHANGES Configure
rse 98/03/10 08:40:49 Modified:src CHANGES Configure Log: Here it comes: Shared Object support SunOS 4.1 with GCC and Sun's ACC. BTW: I received SIGBUS all the time in dlopen() and after wasting a lot of time debugging this problem I discovered that SunOS doesn't like it when the mod_xx.so files are stripped on installation. So, never strip them on SunOS. Revision ChangesPath 1.699 +4 -4 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.698 retrieving revision 1.699 diff -u -r1.698 -r1.699 --- CHANGES 1998/03/10 08:52:56 1.698 +++ CHANGES 1998/03/10 16:40:44 1.699 @@ -18,10 +18,10 @@ [Tony Fincg <[EMAIL PROTECTED]>] PR#1925 *) Various improvements to the configuration and build support for compiling - modules as shared objects. Especially Solaris 2.x support with GCC and - WorkShop Compilers 4.2 was added. This way shared object support is now - provided out-of-the-box for FreeBSD, Linux and Solaris. - [Ralf S. Engelschall] + modules as shared objects. Especially Solaris 2.x and SunOS 4.1 support + with GCC and WorkShop Compilers 4.2 was added. This way shared object + support is now provided out-of-the-box for FreeBSD, Linux, Solaris and + SunOS. [Ralf S. Engelschall] *) Minor cleanup in http_main -- split QNX and OS2 specific "mmap" scoreboard code into separate #defines -- USE_POSIX_SCOREBOARD 1.201 +32 -24apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.200 retrieving revision 1.201 diff -u -r1.200 -r1.201 --- Configure 1998/03/10 09:52:18 1.200 +++ Configure 1998/03/10 16:40:45 1.201 @@ -662,33 +662,41 @@ # We adjust now CFLAGS_SHLIB, LDFLAGS_SHLIB and LDFLAGS_SHLIB_EXPORT as -# required. For more PLATFORMs just add the required lines below. +# required. For more platforms just add the required lines below. # if [ "x$using_shlib" = "x1" ] ; then case "$PLAT" in - *-linux1) - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" - LDFLAGS_SHLIB_EXPORT="-rdynamic" - ;; - *-linux2) - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" - LDFLAGS_SHLIB_EXPORT="-rdynamic" - ;; - *-freebsd*) - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" - LDFLAGS_SHLIB_EXPORT="" - ;; - *-solaris2*) - case $CC in - */gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; - */cc|cc ) CFLAGS_SHLIB="-KPIC" ;; - esac - LDFLAGS_SHLIB="-G" - LDFLAGS_SHLIB_EXPORT="" - ;; +*-linux1) +CFLAGS_SHLIB="-fpic" +LDFLAGS_SHLIB="-Bshareable" +LDFLAGS_SHLIB_EXPORT="-rdynamic" +;; +*-linux2) +CFLAGS_SHLIB="-fpic" +LDFLAGS_SHLIB="-Bshareable" +LDFLAGS_SHLIB_EXPORT="-rdynamic" +;; +*-freebsd*) +CFLAGS_SHLIB="-fpic" +LDFLAGS_SHLIB="-Bshareable" +LDFLAGS_SHLIB_EXPORT="" +;; +*-solaris2*) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/cc|cc ) CFLAGS_SHLIB="-KPIC" ;; +esac +LDFLAGS_SHLIB="-G" +LDFLAGS_SHLIB_EXPORT="" +;; +*-sunos4*) +case $CC in +*/gcc|gcc ) CFLAGS_SHLIB="-fpic" ;; +*/acc|acc ) CFLAGS_SHLIB="-pic" ;; +esac +LDFLAGS_SHLIB="-assert pure-text" +LDFLAGS_SHLIB_EXPORT="" +;; esac fi
cvs commit: apache-1.3/htdocs/manual/mod mod_rewrite.html
rse 98/03/10 05:37:28 Modified:htdocs/manual/mod mod_rewrite.html Log: Phase 2 of mod_rewrite documentation enhancement: Cleanup of the HTML markup code (Thanks to Marc and Martin for hints) Revision ChangesPath 1.27 +215 -200 apache-1.3/htdocs/manual/mod/mod_rewrite.html Index: mod_rewrite.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_rewrite.html,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- mod_rewrite.html 1998/03/04 16:51:15 1.26 +++ mod_rewrite.html 1998/03/10 13:37:27 1.27 @@ -15,7 +15,7 @@ VLINK="#80" ALINK="#FF" > - + @@ -30,6 +30,7 @@ AddModule modules/standard/mod_rewrite.o + @@ -38,7 +39,7 @@ -,,The great thing about mod_rewrite is it gives you all the +``The great thing about mod_rewrite is it gives you all the configurability and flexibility of Sendmail. The downside to mod_rewrite is that it gives you all the configurability and flexibility of Sendmail.'' @@ -72,16 +73,19 @@ But all this functionality and flexibility has its drawback: complexity. So don't expect to understand this module in it's whole in just one day. + This module was invented and originally written in April 1996 and gifted exclusively to the The Apache Group in July 1997 by + -http://www.engelschall.com/";>Ralf S. Engelschall -mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED] -http://www.engelschall.com/";>www.engelschall.com +http://www.engelschall.com/";>Ralf S. Engelschall +mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED] +http://www.engelschall.com/";>www.engelschall.com + Table Of Contents @@ -112,12 +116,14 @@ Practical Solutions + Internal Processing + @@ -205,17 +211,19 @@ - - - - - - -Figure 1: The control flow through the rewriting ruleset - - - + + + + + + +Figure 1: The control flow through the rewriting ruleset + + + @@ -247,17 +255,19 @@ - - - - - - -Figure 2: The back-reference flow through a rule - - - + + + + + + +Figure 2: The back-reference flow through a rule + + + @@ -272,6 +282,7 @@ Configuration Directives + RewriteEngine @@ -289,22 +300,22 @@ >Context: server config, virtual host, per-directory config -The RewriteEngine directive enables or disables the -runtime rewriting engine. If it is set to off this module does -no runtime processing at all. It does not even update the SCRIPT_URx +The RewriteEngine directive enables or disables the runtime +rewriting engine. If it is set to off this module does no runtime +processing at all. It does not even update the SCRIPT_URx environment variables. Use this directive to disable the module instead of commenting out -all RewriteRule directives! +all RewriteRule directives! Note that, by default, rewrite configurations are not inherited. -This means that you need to have a RewriteEngine on +This means that you need to have a RewriteEngine on directive for each virtual host you wish to use it in. - + RewriteOptions @@ -322,7 +333,7 @@ >Context: server config, virtual host, per-directory config -The RewriteOptions directive sets some special options for the +The RewriteOptions directive sets some special options for the current per-server or per-directory configuration. The Option strings can be one of the following: @@ -332,11 +343,11 @@ parent. In per-virtual-server context this means that the maps, conditions and rules of the main server gets inherited. In per-directory context this means that conditions and rules of the parent directory's -.htaccess configuration gets inherited. +.htaccess configuration gets inherited. - + RewriteLog @@ -354,14 +365,14 @@ >Context: server config, virtual host -The RewriteLog directive sets the name of the file to which the +The RewriteLog directive sets the name of the file to which the server logs any rewriting actions it performs. If the name does not begin -with a slash ('/') then it is assumed to be relative to the +with a slash ('/') then it is assumed to be relative to the Server Root. The directive should occur only once per server config. - + Notice: To disable the logging of rewriting actions it is not recommended to set Filename @@ -370,12 +381,12 @@ output internally. This will slow down the server
cvs commit: apache-1.3/src/modules/standard mod_so.c
rse 98/03/10 01:22:32 Modified:src/modules/standard mod_so.c Log: And finally a bunch of new comments and cosmetics for mod_so. Revision ChangesPath 1.8 +102 -77 apache-1.3/src/modules/standard/mod_so.c Index: mod_so.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_so.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- mod_so.c 1998/03/10 08:52:58 1.7 +++ mod_so.c 1998/03/10 09:22:32 1.8 @@ -52,66 +52,70 @@ */ /* - * This module is used to load Apache modules at runtime. This means - * that the server functionality can be extended without recompiling - * and even without taking the server down at all! + * This module is used to load Apache modules at runtime. This means that the + * server functionality can be extended without recompiling and even without + * taking the server down at all. Only a HUP or USR1 signal needs to be send + * to the server to reload the dynamically loaded modules. * * To use, you'll first need to build your module as a shared library, then - * update your configuration (httpd.conf) to get the Apache core to - * load the module at start-up. + * update your configuration (httpd.conf) to get the Apache core to load the + * module at start-up. * * The easiest way to build a module as a shared library is to use the - * "SharedModule" command in the Configuration file, instead of AddModule. - * You should also change the file extension from .o to .so. So, for example, - * to build the status module as a shared library edit Configuration + * `SharedModule' command in the Configuration file, instead of `AddModule'. + * You should also change the file extension from `.o' to `.so'. So, for + * example, to build the status module as a shared library edit Configuration * and change * AddModulemodules/standard/mod_status.o * to * SharedModule modules/standard/mod_status.so * - * Run Configure and make. Now Apache's httpd will _not_ include - * mod_status. Instead a shared library called mod_status.so will be - * build, in the modules/standard directory. You can build any or all - * modules as shared libraries like this. + * Run Configure and make. Now Apache's httpd binary will _not_ include + * mod_status. Instead a shared object called mod_status.so will be build, in + * the modules/standard directory. You can build most of the modules as shared + * libraries like this. * * To use the shared module, move the .so file(s) into an appropriate - * directory. You might like to create a directory called "modules" under - * you server root for this (e.g. /usr/local/httpd/modules). + * directory. You might like to create a directory called "modules" under you + * server root for this (e.g. /usr/local/httpd/modules). * * Then edit your conf/httpd.conf file, and add LoadModule lines. For * example * LoadModule status_module modules/mod_status.so * - * The first argument is the module's structure name (look at the - * end of the module source to find this). The second option is - * the path to the module file, relative to the server root. - * Put these directives right at the top of your httpd.conf file. - * - * Now you can start Apache. A message will be logged at "debug" level - * to your error_log to confirm that the module(s) are loaded (use - * "LogLevel debug" directive to get these log messages). - * - * If you edit the LoadModule directives while the server is live you - * can get Apache to re-load the modules by sending it a HUP or USR1 - * signal as normal. You can use this to dynamically change the - * capability of your server without bringing it down. + * The first argument is the module's structure name (look at the end of the + * module source to find this). The second option is the path to the module + * file, relative to the server root. Put these directives right at the top + * of your httpd.conf file. + * + * Now you can start Apache. A message will be logged at "debug" level to your + * error_log to confirm that the module(s) are loaded (use "LogLevel debug" + * directive to get these log messages). + * + * If you edit the LoadModule directives while the server is live you can get + * Apache to re-load the modules by sending it a HUP or USR1 signal as normal. + * You can use this to dynamically change the capability of your server + * without bringing it down. + * + * Because currently there is only limited built-in support in the Configure + * script for creating the shared library files (`.so'), please consult your + * vendors cc(1), ld(1) and dlopen(3) manpages to find out the appropriate + * compiler and linker flags and insert them manually into the Configuration + * file under CFLAGS_SHL
cvs commit: apache-1.3/src/modules/standard mod_so.c
(163): unloaded module mod_setenvif.c [debug] mod_so.c(163): unloaded module mod_access.c [debug] mod_so.c(163): unloaded module mod_userdir.c [debug] mod_so.c(163): unloaded module mod_dir.c [debug] mod_so.c(163): unloaded module mod_autoindex.c [debug] mod_so.c(163): unloaded module mod_negotiation.c [debug] mod_so.c(163): unloaded module mod_log_config.c [error] Cannot remove module mod_setenvif.c: not found in module list [debug] mod_so.c(163): unloaded module mod_setenvif.c [error] Cannot remove module mod_access.c: not found in module list [debug] mod_so.c(163): unloaded module mod_access.c [error] Cannot remove module mod_userdir.c: not found in module list [debug] mod_so.c(163): unloaded module mod_userdir.c [error] Cannot remove module mod_dir.c: not found in module list [debug] mod_so.c(163): unloaded module mod_dir.c [error] Cannot remove module mod_autoindex.c: not found in module list [debug] mod_so.c(163): unloaded module mod_autoindex.c [error] Cannot remove module mod_negotiation.c: not found in module list [debug] mod_so.c(163): unloaded module mod_negotiation.c [error] Cannot remove module mod_log_config.c: not found in module list [debug] mod_so.c(163): unloaded module mod_log_config.c [error] Cannot remove module mod_setenvif.c: not found in module list [debug] mod_so.c(163): unloaded module mod_setenvif.c [error] Cannot remove module mod_access.c: not found in module list [debug] mod_so.c(163): unloaded module mod_access.c [error] Cannot remove module mod_userdir.c: not found in module list [debug] mod_so.c(163): unloaded module mod_userdir.c [error] Cannot remove module mod_dir.c: not found in module list [debug] mod_so.c(163): unloaded module mod_dir.c [error] Cannot remove module mod_autoindex.c: not found in module list [debug] mod_so.c(163): unloaded module mod_autoindex.c [error] Cannot remove module mod_negotiation.c: not found in module list [debug] mod_so.c(163): unloaded module mod_negotiation.c [error] Cannot remove module mod_log_config.c: not found in module list [debug] mod_so.c(163): unloaded module mod_log_config.c And this is the one with the new mod_so.c: (again the first unloads correspond to the first loads which are printed on stderr unless mod_log_config is present) [debug] mod_so.c(191): unloaded module setenvif_module [debug] mod_so.c(191): unloaded module access_module [debug] mod_so.c(191): unloaded module userdir_module [debug] mod_so.c(191): unloaded module dir_module [debug] mod_so.c(191): unloaded module autoindex_module [debug] mod_so.c(191): unloaded module negotiation_module [debug] mod_so.c(191): unloaded module config_log_module [debug] mod_so.c(261): loaded module config_log_module [debug] mod_so.c(261): loaded module negotiation_module [debug] mod_so.c(261): loaded module autoindex_module [debug] mod_so.c(261): loaded module dir_module [debug] mod_so.c(261): loaded module userdir_module [debug] mod_so.c(261): loaded module access_module [debug] mod_so.c(261): loaded module setenvif_module [notice] Apache/1.3b6-dev configured -- resuming normal operations [notice] httpd: caught SIGTERM, shutting down [debug] mod_so.c(191): unloaded module setenvif_module [debug] mod_so.c(191): unloaded module access_module [debug] mod_so.c(191): unloaded module userdir_module [debug] mod_so.c(191): unloaded module dir_module [debug] mod_so.c(191): unloaded module autoindex_module [debug] mod_so.c(191): unloaded module negotiation_module [debug] mod_so.c(191): unloaded module config_log_module Revision ChangesPath 1.183 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.182 retrieving revision 1.183 diff -u -r1.182 -r1.183 --- STATUS1998/03/10 07:45:03 1.182 +++ STATUS1998/03/10 08:52:55 1.183 @@ -78,6 +78,7 @@ * Corrections to the setup of the REMOTE_HOST variable. PR#1925 * Fix for rputs() which did not calculate r->sent_bodyct properly. PR#1900 * Don't tweak TZ envvar if the user has specified an explicit one. PR#1888 +* Ralf's mod_so changes to keep track of loaded modules ourself. Available Patches: 1.698 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.697 retrieving revision 1.698 diff -u -r1.697 -r1.698 --- CHANGES 1998/03/10 06:30:46 1.697 +++ CHANGES 1998/03/10 08:52:56 1.698 @@ -1,5 +1,9 @@ Changes with Apache 1.3b6 + *) Now mod_so keeps track of which module shared objects with which names + are loaded and thus avoids multiple loading and unloading and irritating + error_log me
cvs commit: apache-1.3 STATUS
rse 98/03/09 23:45:04 Modified:.STATUS Log: Snow is falling down in germany but the Sun comes out... Revision ChangesPath 1.182 +9 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.181 retrieving revision 1.182 diff -u -r1.181 -r1.182 --- STATUS1998/03/06 12:57:37 1.181 +++ STATUS1998/03/10 07:45:03 1.182 @@ -66,10 +66,18 @@ * Ken's abstraction of SERVER_{BUILT,VERSION} * Ken's fix for os/unix/os.h and the new -DHIDE functionality * Ralf's Config File Line Continuation -* Ralf's Reanimation of DBM support for RewriteMap in mod_rewrite +* Ralf's Reanimation of DBM support for RewriteMap in mod_rewrite PR#1696 * Ralf's fix for the ` w/o mod_rewrite' situation. PR#1790 * Mark's fix for ProxyPass/ProxyRequests interaction broken by uri stuff +* Rasmus' generation of the new src/include/ap_config.h header file +* Dean's fix for mod_mime_magic and files with length 0 +* Dean's change to Location and LocationMatch semantics. PR#1440 * Ralf's fix for the flock()<->fork() problematic for RewriteLock's +* Dean's Minor cleanup in http_main +* Ralf's Various improvements to the configuration and build support +* Corrections to the setup of the REMOTE_HOST variable. PR#1925 +* Fix for rputs() which did not calculate r->sent_bodyct properly. PR#1900 +* Don't tweak TZ envvar if the user has specified an explicit one. PR#1888 Available Patches:
cvs commit: apache-1.3/src CHANGES Configuration.tmpl Configure
rse 98/03/09 08:47:10 Modified:src CHANGES Configuration.tmpl Configure Log: Various Enhancements to the Shared Object support - 1. Shared object support is compiler-dependend, so we have to move the XXX_SHLIB stuff _after_ the compiler checks in the Configure script. 3. Added entries for manual/custom shared object support to Configuration.tmpl file, so the user knows what he has to do. Configure already supported this in the past but nothing was documented here. 3. Added initial support for Solaris 2.x. 4. I've now tested shared object support under the following platform/compiler combinations: - FreeBSD 2.1.5 with gcc 2.8.0 - Debian 1.3.1 with gcc 2.7.2 - Solaris 2.6 with gcc 2.7.2 - Solaris 2.5.1 with gcc 2.7.2 - Solaris 2.5.1 with WorkShop Compilers 4.2 30 Oct 1996 C 4.2 All ran out-the-box with my test procedure: [Yes, I really would like to see my configure stuff added...] $ gunzip http://localhost:80/ $ /tmp/apache/sbin/apachectl stop $ cd .. $ rm -rf apache-1.3b6-dev Revision ChangesPath 1.694 +6 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.693 retrieving revision 1.694 diff -u -r1.693 -r1.694 --- CHANGES 1998/03/08 04:25:53 1.693 +++ CHANGES 1998/03/09 16:47:06 1.694 @@ -1,5 +1,11 @@ Changes with Apache 1.3b6 + *) Various improvements to the configuration and build support for compiling + modules as shared objects. Especially Solaris 2.x support with GCC and + WorkShop Compilers 4.2 was added. This way shared object support is now + provided out-of-the-box for FreeBSD, Linux and Solaris. + [Ralf S. Engelschall] + *) Minor cleanup in http_main -- split QNX and OS2 specific "mmap" scoreboard code into separate #defines -- USE_POSIX_SCOREBOARD and USE_OS2_SCOREBOARD. [Dean Gaudet] 1.82 +20 -0 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.81 retrieving revision 1.82 diff -u -r1.81 -r1.82 --- Configuration.tmpl1998/03/01 03:19:49 1.81 +++ Configuration.tmpl1998/03/09 16:47:08 1.82 @@ -51,6 +51,26 @@ #RANLIB= +# Makefile configuration (Shared Object support) +# +# There is experimental support for compiling Apache Modules as +# shared objects. This feature can be enabled for each module +# individually by replacing the `AddModule' command of the +# corresponding module line below with `SharedModule' and +# changing the filename extension from `.o' to `.so'. +# +# The Configure script currently has only limited built-in +# knowledge on how to compile shared objects because this is +# heavily platform-dependend. Currently only Linux, FreeBSD and +# Solaris are supported out-of-the-box. For other platforms where +# you want to use the `SharedModule' directive you have to +# provide the appropriate flags here. +# +#CFLAGS_SHLIB= +#LDFLAGS_SHLIB= +#LDFLAGS_SHLIB_EXPORT= + + # Rules configuration # # These are used to let Configure know that we want certain 1.198 +60 -17apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.197 retrieving revision 1.198 diff -u -r1.197 -r1.198 --- Configure 1998/03/09 12:52:05 1.197 +++ Configure 1998/03/09 16:47:08 1.198 @@ -324,15 +324,11 @@ OS='Linux' CFLAGS="$CFLAGS -DLINUX=2" LIBS="$LIBS -lm" - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" ;; *-linux1) DEF_WANTHSREGEX=yes OS='Linux' CFLAGS="$CFLAGS -DLINUX=1" - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" ;; *-lynx-lynxos) OS='LynxOS 2.x' @@ -371,8 +367,6 @@ LIBS="$LIBS -lcrypt" DBM_LIB="" DB_LIB="" - CFLAGS_SHLIB="-fpic" - LDFLAGS_SHLIB="-Bshareable" ;; *-openbsd*) OS='OpenBSD' @@ -648,12 +642,10 @@ echo " + setting C compiler to $CC" fi -# +
cvs commit: apache-1.3/src Configure
rse 98/03/09 04:52:06 Modified:src Configure Log: ConfigStart/End sections were totally ignored for SharedModule Revision ChangesPath 1.197 +9 -5 apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.196 retrieving revision 1.197 diff -u -r1.196 -r1.197 --- Configure 1998/03/09 08:41:58 1.196 +++ Configure 1998/03/09 12:52:05 1.197 @@ -815,7 +815,7 @@ # additional hackery. It would be nice to reduce the number of times # we have to awk the $tmpfile, though. -# MODFILES contains a list of module filenames (could be .c, .o, .a +# MODFILES contains a list of module filenames (could be .c, .o, .so, .a #or .module files) from AddModule lines only # MODDIRS contains a list of subdirectories under 'modules' which #contain modules we want to build from both AddModule and Module @@ -823,7 +823,7 @@ echo " + adding selected modules" -MODFILES=`awk <$tmpfile '$1 == "AddModule" { printf "%s ", $2 }'` +MODFILES=`awk <$tmpfile '($1 == "AddModule" || $1 == "SharedModule") { printf "%s ", $2 }'` MODDIRS=`awk < $tmpfile ' ($1 == "Module" && $3 ~ /^modules\//) { split ($3, pp, "/") @@ -892,14 +892,18 @@ . ./$tmpfile3 fi rm -f $tmpfile2 $tmpfile3 - ext=o + if [ $ext != so ]; then + ext=o + fi fi if [ "x$modname" = "x" ] ; then modname=`echo $modbase | sed 's/^.*\///' | \ sed 's/^mod_//' | sed 's/^lib//' | sed 's/$/_module/'` fi -#echo "Adding Module $modname $modbase.$ext" - echo "Module $modname $modbase.$ext" >>$tmpfile + if [ $ext != so ]; then +#echo "Adding Module $modname $modbase.$ext" + echo "Module $modname $modbase.$ext" >>$tmpfile + fi done # $tmpfile now contains Module lines for all the modules we want
cvs commit: apache-1.3/src/os/win32 mod_dll.c
rse 98/03/09 03:38:57 Modified:src/os/win32 mod_dll.c Log: typo Revision ChangesPath 1.7 +1 -1 apache-1.3/src/os/win32/mod_dll.c Index: mod_dll.c === RCS file: /export/home/cvs/apache-1.3/src/os/win32/mod_dll.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- mod_dll.c 1998/01/07 16:47:08 1.6 +++ mod_dll.c 1998/03/09 11:38:57 1.7 @@ -77,7 +77,7 @@ * 1. Add the following to the module source file's module record *definition: MODULE_VAR_EXPORT. i.e. if you have *"module foo_module;", replace it with - *"module MODULE+VAR_EXPORT foo_module;". If your module is to be + *"module MODULE_VAR_EXPORT foo_module;". If your module is to be *compiled with both Windows and Unix, you may wish to use an #ifdef *WIN32 *
cvs commit: apache-1.3/src/modules/standard mod_so.c
rse 98/03/09 03:35:42 Modified:src/modules/standard mod_so.c Log: Cosmetics and completion of module structure Revision ChangesPath 1.6 +5 -2 apache-1.3/src/modules/standard/mod_so.c Index: mod_so.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_so.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- mod_so.c 1998/02/24 10:30:54 1.5 +++ mod_so.c 1998/03/09 11:35:42 1.6 @@ -222,7 +222,7 @@ modp->dynamic_load_handle = modhandle; -add_module (modp); +add_module(modp); /* Register a cleanup in the config pool (normally pconf). When * we do a restart (or shutdown) this cleanup will cause the @@ -307,5 +307,8 @@ NULL, /* check access */ NULL, /* type_checker */ NULL, /* logger */ - NULL /* header parser */ + NULL, /* header parser */ + NULL, /* child_init */ + NULL, /* child_exit */ + NULL /* post read-request */ };
cvs commit: apache-1.3/src Configure
rse 98/03/08 04:58:21 Modified:src Configure Log: Fix Configure script: 1. move generation of ap_config.h to a later point in the script because else it doesn't pick up HIDE or STATUS correctly. 2. change the generation of shared objects from explicit rules to implicit rules: First the $< is only portable for implict rules (e.g. FreeBSD's make fails) and second we already build .o's implicitly, so we should do with .so's the same way. Revision ChangesPath 1.195 +26 -23apache-1.3/src/Configure Index: Configure === RCS file: /export/home/cvs/apache-1.3/src/Configure,v retrieving revision 1.194 retrieving revision 1.195 diff -u -r1.194 -r1.195 --- Configure 1998/03/05 18:58:31 1.194 +++ Configure 1998/03/08 12:58:19 1.195 @@ -841,24 +841,6 @@ }'` # -# At this point we can pick out all -D's from CFLAGS and create ap_config.h -# to be used by external modules needing to include Apache header files. -# - -for cflag in $CFLAGS; do - echo $cflag >>$tmpconfig ; -done -awk > include/ap_config.h < $tmpconfig ' - BEGIN { - printf "/* Automatically generated file - do not edit */\n\n" - } - /^-D.*/ { - split(substr($1,3,length($1)),parts,"=") - printf ("#define %s %s\n",parts[1],parts[2]) - } -' - -# # Now autoconfigure each of the modules specified by AddModule. # Use tmpfile2 for the module definition file, and tmpfile3 for the # shell commands to be executed for this module. @@ -1078,6 +1060,25 @@ echo " End of Configure created section ">> Makefile.config +# Continue building include/ap_config.h +# +# We pick out all -D's from CFLAGS and create ap_config.h which +# can be used by external modules needing to include Apache +# header files. +for cflag in $CFLAGS; do + echo $cflag >>$tmpconfig ; +done +awk > include/ap_config.h < $tmpconfig ' + BEGIN { + printf "/* Automatically generated file - do not edit */\n\n" + } + /^-D.*/ { + split(substr($1,3,length($1)),parts,"=") + printf ("#define %s %s\n",parts[1],parts[2]) + } +' + + # Use TestCompile to see if $(CC) is ANSI and as a "final" sanity # check # @@ -1167,15 +1168,11 @@ split(pp[3], parts, ".") base=parts[1] shlibsobj=shlibsobj " " base "-so.o" - comp=comp base ".so: " base "-so.o\n" - comp=comp " $(LD) $(LDFLAGS) $(LDFLAGS_SHLIB) -o " base ".so $<\n" - comp=comp base "-so.o: " base ".c\n" - comp=comp " $(CC) $(CFLAGS) $(INCLUDES) $(CFLAGS_SHLIB) -c -o " base "-so.o $<\n" } END { printf "SHLIBS=%s\n", shlibs; printf "SHLIBS_OBJ=%s\n", shlibsobj; - print "\n" comp "\n" }' +}' $CAT << 'EOF' >> $moddir/Makefile @@ -1188,8 +1185,14 @@ ar cr $@ $(OBJS) $(RANLIB) $@ +.SUFFIXES: .o .so + .c.o: $(CC) -c $(INCLUDES) $(CFLAGS) $(SPACER) $< + +.c.so: + $(CC) -c $(INCLUDES) $(CFLAGS) $(CFLAGS_SHLIB) $(SPACER) -o $*-so.o $< + $(LD) $(LDFLAGS) $(LDFLAGS_SHLIB) -o $@ $*-so.o clean: rm -f $(OBJS) $(SHLIBS) $(SHLIBS_OBJ) $(LIB) $(SHLIB)
cvs commit: apache-1.3/src/modules/standard mod_rewrite.c mod_rewrite.h
rse 98/03/06 05:47:42 Modified:src/modules/standard mod_rewrite.c mod_rewrite.h Log: Inline the proxy availability check because the existence of the function is_proxy_available() is historical and from days where no find_linked_module() function existed and where this was a bigger function. Revision ChangesPath 1.88 +1 -13 apache-1.3/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v retrieving revision 1.87 retrieving revision 1.88 diff -u -r1.87 -r1.88 --- mod_rewrite.c 1998/03/06 12:52:57 1.87 +++ mod_rewrite.c 1998/03/06 13:47:40 1.88 @@ -878,7 +878,7 @@ static void init_module(server_rec *s, pool *p) { /* check if proxy module is available */ -proxy_available = is_proxy_available(s); +proxy_available = (find_linked_module("mod_proxy.c") != NULL); /* precompile a static pattern for the txt mapfile parsing */ @@ -3783,18 +3783,6 @@ return 1; else return 0; -} - -/* -** -** check if proxy module is available -** i.e. if it is compiled in and turned on -** -*/ - -static int is_proxy_available(server_rec *s) -{ -return (find_linked_module("mod_proxy.c") != NULL); } 1.48 +0 -3 apache-1.3/src/modules/standard/mod_rewrite.h Index: mod_rewrite.h === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.h,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- mod_rewrite.h 1998/03/06 12:52:58 1.47 +++ mod_rewrite.h 1998/03/06 13:47:41 1.48 @@ -458,9 +458,6 @@ static intprefix_stat(const char *path, struct stat *sb); static void add_env_variable(request_rec *r, char *s); -/* Proxy Module check */ -static int is_proxy_available(server_rec *s); - /* File locking */ static void fd_lock(int fd); static void fd_unlock(int fd);
cvs commit: apache-1.3 STATUS
rse 98/03/06 04:57:38 Modified:.STATUS Log: Again cold days in germany... Revision ChangesPath 1.181 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.180 retrieving revision 1.181 diff -u -r1.180 -r1.181 --- STATUS1998/03/06 12:43:51 1.180 +++ STATUS1998/03/06 12:57:37 1.181 @@ -69,6 +69,7 @@ * Ralf's Reanimation of DBM support for RewriteMap in mod_rewrite * Ralf's fix for the ` w/o mod_rewrite' situation. PR#1790 * Mark's fix for ProxyPass/ProxyRequests interaction broken by uri stuff +* Ralf's fix for the flock()<->fork() problematic for RewriteLock's Available Patches:
cvs commit: apache-1.3/src/modules/standard mod_rewrite.c mod_rewrite.h
rse 98/03/06 04:52:59 Modified:src CHANGES src/modules/standard mod_rewrite.c mod_rewrite.h Log: Avoid the flock()<->fork() problematic by giving each child an own file descriptor instead of a shared one. Revision ChangesPath 1.692 +11 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.691 retrieving revision 1.692 diff -u -r1.691 -r1.692 --- CHANGES 1998/03/06 09:37:04 1.691 +++ CHANGES 1998/03/06 12:52:55 1.692 @@ -1,5 +1,16 @@ Changes with Apache 1.3b6 + *) Fix one more special locking problem for RewriteMap programs in + mod_rewrite: According to the documentation of flock(), "Locks are on + files, not file descriptors. That is, file descriptors duplicated + through dup(2) or fork(2) do not result in multiple instances of a lock, + but rather multiple references to a single lock. If a process holding a + lock on a file forks and the child explicitly unlocks the file, the + parent will lose its lock.". To overcome this we have to make sure the + RewriteLock file is opened _AFTER_ the childs were spawned which is now + the case by opening it in the child_init instead of the module_init API + hook. [Ralf S. Engelschall, PR#1029] + *) Change to Location and LocationMatch semantics. LocationMatch no longer lets a single slash match multiple adjacent slashes in the URL. This change is for consistency with RewriteRule and 1.87 +86 -29apache-1.3/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v retrieving revision 1.86 retrieving revision 1.87 diff -u -r1.86 -r1.87 --- mod_rewrite.c 1998/03/05 12:42:37 1.86 +++ mod_rewrite.c 1998/03/06 12:52:57 1.87 @@ -193,7 +193,7 @@ hook_fixup, /* [#7] pre-run fixups */ NULL,/* [#9] log a transaction */ NULL,/* [#3] header parser */ - NULL,/* child_init */ + init_child, /* child_init */ NULL,/* child_exit */ NULL /* [#0] post read-request */ }; @@ -869,7 +869,7 @@ /* ** -** module initialisation +** Global Module Initialization ** [called from read_config() after all ** config commands were already called] ** @@ -877,26 +877,42 @@ static void init_module(server_rec *s, pool *p) { +/* check if proxy module is available */ +proxy_available = is_proxy_available(s); + +/* precompile a static pattern + for the txt mapfile parsing */ +lookup_map_txtfile_regexp = pregcomp(p, MAPFILE_PATTERN, REG_EXTENDED); + +/* create the rewriting lockfile in the parent */ +rewritelock_create(s, p); +register_cleanup(p, (void *)s, rewritelock_remove, null_cleanup); + /* step through the servers and * - open each rewriting logfile - * - open each rewriting lockfile * - open the RewriteMap prg:xxx programs */ for (; s; s = s->next) { open_rewritelog(s, p); -open_rewritelock(s, p); run_rewritemap_programs(s, p); } +} -/* create the lookup cache */ -cachep = init_cache(p); -/* check if proxy module is available */ -proxy_available = is_proxy_available(s); +/* +** +** Per-Child Module Initialization +** [called after a child process is spawned] +** +*/ -/* precompile a static pattern - for the txt mapfile parsing */ -lookup_map_txtfile_regexp = pregcomp(p, MAPFILE_PATTERN, REG_EXTENDED); +static void init_child(server_rec *s, pool *p) +{ + /* open the rewriting lockfile */ + rewritelock_open(s, p); + + /* create the lookup cache */ + cachep = init_cache(p); } @@ -2984,37 +3000,78 @@ ** +---+ */ -static void open_rewritelock(server_rec *s, pool *p) -{ -rewrite_server_conf *conf; -char *fname; -intrewritelock_flags = ( O_WRONLY|O_APPEND|O_CREAT ); #ifdef WIN32 -mode_t rewritelock_mode = ( _S_IREAD|_S_IWRITE ); +#define REWRITELOCK_MODE ( _S_IREAD|_S_IWRITE ) #else -mode_t rewritelock_mode = ( S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH ); +#define REWRITELOCK_MODE ( S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH ) #endif +static void rewritelock_create(ser
cvs commit: apache-devsite how-to-release.html
rse 98/03/05 07:33:58 Modified:.how-to-release.html Log: The stuff in src/modules/test/ is of the same type as the stuff in src/test, so better to leave it out in the distribution tarball... Revision ChangesPath 1.30 +3 -2 apache-devsite/how-to-release.html Index: how-to-release.html === RCS file: /export/home/cvs/apache-devsite/how-to-release.html,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- how-to-release.html 1998/03/05 11:58:34 1.29 +++ how-to-release.html 1998/03/05 15:33:57 1.30 @@ -160,10 +160,11 @@ Remove STATUS, RULES.CVS, src/INDENT, various .cvsignore files - and the developer's test subdirectory: + and the developer's test subdirectories: $ rm STATUS RULES.CVS src/INDENT - $ find . -name ".cvsignore" -exec rm {} \; + $ find . -name ".cvsignore" -exec rm {} \; $ rm -rf src/test + $ rm -rf src/modules/test Note: If you needed to do a checkout instead of a export, you
cvs commit: apache-1.3 STATUS
rse 98/03/05 07:31:27 Modified:.STATUS Log: Yeah, 1.2.6 has to go out. This is the best way to start. Revision ChangesPath 1.179 +1 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.178 retrieving revision 1.179 diff -u -r1.178 -r1.179 --- STATUS1998/03/05 12:40:56 1.178 +++ STATUS1998/03/05 15:31:26 1.179 @@ -372,4 +372,4 @@ Dean intends to post this on friday, around noon PST. -Status: Dean +1, Ken +1 +Status: Dean +1, Ken +1, Ralf +1
cvs commit: apache-1.3/conf httpd.conf-dist
rse 98/03/05 04:28:34 Modified:conf httpd.conf-dist Log: The example config should match the defaults in httpd.h also for the Scoreboard filename, even if we mmap() it on most platforms... Revision ChangesPath 1.21 +1 -1 apache-1.3/conf/httpd.conf-dist Index: httpd.conf-dist === RCS file: /export/home/cvs/apache-1.3/conf/httpd.conf-dist,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- httpd.conf-dist 1998/02/04 19:42:29 1.20 +++ httpd.conf-dist 1998/03/05 12:28:33 1.21 @@ -73,7 +73,7 @@ # Not all architectures require this. But if yours does (you'll know because # this file is created when you run Apache) then you *must* ensure that # no two invocations of Apache share the same scoreboard file. -ScoreBoardFile logs/apache_status +ScoreBoardFile logs/apache_runtime_status # The LockFile directive sets the path to the lockfile used when Apache # is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or