diff options
author | steve <steve@FreeBSD.org> | 1999-09-27 02:52:26 +0000 |
---|---|---|
committer | steve <steve@FreeBSD.org> | 1999-09-27 02:52:26 +0000 |
commit | b85fc2c18af0661c6428ba9988e97b3158f5c328 (patch) | |
tree | 23ee3f34b245fadedef2db446d8eb8fbd5945183 /www/apache13-fp/files | |
parent | 2c541af9aa3758bce2c11ef3d2ffa05a26b427bf (diff) | |
download | FreeBSD-ports-b85fc2c18af0661c6428ba9988e97b3158f5c328.zip FreeBSD-ports-b85fc2c18af0661c6428ba9988e97b3158f5c328.tar.gz |
Update to use Apache version 1.3.9. Misc. notes from maintainer:
patch-au corrects a problem when either ResourceConfig/AccessConfig is
set to the apache configuration file (${PREFIX}/etc/apache/httpd.conf).
Without this patch, if you set the apache server to listen to alterate
ports the server would fail to start and the error log would contain:
[crit] (48)Address already in use: make_sock: could not bind to port 8000
ResourceConfig/AccessConfig can't be set to /dev/null. The fpsrvadm.exe
will not be able to obtain the DocumnetRoot from the ResourceConfig file
(/dev/null).
PR: 13673
Submitted by: maintainer
Diffstat (limited to 'www/apache13-fp/files')
-rw-r--r-- | www/apache13-fp/files/patch-aa | 29 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-ab | 95 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-ag | 47 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-ak | 36 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-al | 17 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-as | 11 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-at | 16 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-fd | 112 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-fe | 312 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-fh | 40 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-fi | 6 | ||||
-rw-r--r-- | www/apache13-fp/files/patch-fj | 30 |
12 files changed, 366 insertions, 385 deletions
diff --git a/www/apache13-fp/files/patch-aa b/www/apache13-fp/files/patch-aa index 0a8331b..9eaa76b 100644 --- a/www/apache13-fp/files/patch-aa +++ b/www/apache13-fp/files/patch-aa @@ -1,14 +1,15 @@ ---- configure.orig Sat Jan 2 07:19:41 1999 -+++ configure Mon Jan 18 17:18:16 1999 -@@ -953,6 +953,7 @@ +--- configure.orig Sat Aug 14 03:29:05 1999 ++++ configure Mon Sep 6 12:36:24 1999 +@@ -1084,7 +1084,7 @@ + ## UID/GID as production oriented as a web server in NIS anyway. ## - ## determine special configuration parameters - ## -+conf_user="nobody" - conf_group="#-1" + conf_user="nobody" +-conf_group="#-1" ++conf_group="nogroup" conf_port="80" conf_serveradmin="you@your.address" -@@ -971,6 +972,9 @@ + conf_servername="new.host.name" +@@ -1109,6 +1109,9 @@ conf_serveradmin="`$aux/buildinfo.sh -n %u@%h%d`" conf_servername="`$aux/buildinfo.sh -n %h%d`" fi @@ -18,7 +19,7 @@ ## ## determine prefix-relative paths for directories -@@ -1012,8 +1016,8 @@ +@@ -1153,8 +1156,8 @@ echo " DEFAULT_PIDLOG: ${runtimedir_relative}${thetarget}.pid" echo " DEFAULT_SCOREBOARD: ${runtimedir_relative}${thetarget}.scoreboard" echo " DEFAULT_LOCKFILE: ${runtimedir_relative}${thetarget}.lock" @@ -29,15 +30,7 @@ echo " TYPES_CONFIG_FILE: ${sysconfdir_relative}mime.types" echo " SERVER_CONFIG_FILE: ${sysconfdir_relative}${thetarget}.conf" echo " ACCESS_CONFIG_FILE: ${sysconfdir_relative}access.conf" -@@ -1068,6 +1072,7 @@ - -e "s%@suexec_uidmin@%$suexec_uidmin%g" \ - -e "s%@suexec_gidmin@%$suexec_gidmin%g" \ - -e "s%@suexec_safepath@%$suexec_safepath%g" \ -+-e "s%@conf_user@%$conf_user%g" \ - -e "s%@conf_group@%$conf_group%g" \ - -e "s%@conf_port@%$conf_port%g" \ - -e "s%@conf_serveradmin@%$conf_serveradmin%g" \ -@@ -1091,8 +1096,8 @@ +@@ -1244,8 +1247,8 @@ echo "echo '-DDEFAULT_PIDLOG=\"${runtimedir_relative}${thetarget}.pid\"'" >>$src/apaci echo "echo '-DDEFAULT_SCOREBOARD=\"${runtimedir_relative}${thetarget}.scoreboard\"'" >>$src/apaci echo "echo '-DDEFAULT_LOCKFILE=\"${runtimedir_relative}${thetarget}.lock\"'" >>$src/apaci diff --git a/www/apache13-fp/files/patch-ab b/www/apache13-fp/files/patch-ab index 4607eec..dc8da3e 100644 --- a/www/apache13-fp/files/patch-ab +++ b/www/apache13-fp/files/patch-ab @@ -1,30 +1,14 @@ ---- Makefile.tmpl.orig Mon Mar 15 18:38:46 1999 -+++ Makefile.tmpl Sat Apr 3 15:25:47 1999 -@@ -113,13 +113,14 @@ - sysconfdir = @sysconfdir@ - datadir = @datadir@ - iconsdir = $(datadir)/icons --htdocsdir = $(datadir)/htdocs -+htdocsdir = $(datadir)/data - cgidir = $(datadir)/cgi-bin - includedir = @includedir@ - localstatedir = @localstatedir@ +--- Makefile.tmpl.orig Fri Aug 13 01:58:18 1999 ++++ Makefile.tmpl Mon Sep 6 12:58:17 1999 +@@ -120,6 +120,7 @@ runtimedir = @runtimedir@ logfiledir = @logfiledir@ proxycachedir = @proxycachedir@ -+doc_prefix = $(prefix)/share/doc/apache ++doc_prefix = $(prefix)/share/doc/apache libexecdir_relative = @libexecdir_relative@ -@@ -134,6 +135,7 @@ - suexec_safepath = @suexec_safepath@ - - # some substituted configuration parameters -+conf_user = @conf_user@ - conf_group = @conf_group@ - conf_port = @conf_port@ - conf_serveradmin = @conf_serveradmin@ -@@ -249,9 +251,9 @@ +@@ -255,9 +256,9 @@ $(MKDIR) $(root)$(mandir)/man1 $(MKDIR) $(root)$(mandir)/man8 $(MKDIR) $(root)$(sysconfdir) @@ -34,32 +18,49 @@ - $(MKDIR) $(root)$(cgidir) + $(MKDIR) $(root)$(cgidir).default $(MKDIR) $(root)$(includedir) + $(MKDIR) $(root)$(includedir)/xml $(MKDIR) $(root)$(runtimedir) - $(MKDIR) $(root)$(logfiledir) -@@ -294,9 +296,11 @@ - file=`echo $${mod} | sed -e 's;^.*/\([^/]*\);\1;'`; \ +@@ -313,19 +314,34 @@ echo "$(INSTALL_DSO) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}"; \ $(INSTALL_DSO) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}; \ -- name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$${mod}`; \ -- echo dummy | awk '{ printf("LoadModule %-18s %s\n", modname, modpath); }' \ -- modname="$${name}" modpath="$(libexecdir_relative)$${file}" >>$(SRC)/.apaci.install.conf; \ -+ if [ "$${file}" != "mod_frontpage.so" ]; then \ -+ name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$${mod}`; \ -+ echo dummy | awk '{ printf("LoadModule %-18s %s\n", modname, modpath); }' \ -+ modname="$${name}" modpath="$(libexecdir_relative)$${file}" >>$(SRC)/.apaci.install.conf; \ + name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$${mod}`; \ ++ if [ ".$$name" = .frontpage_module ]; then \ ++ echo "<IfDefine FRONTPAGE>" >>$(SRC)/.apaci.install.conf; \ ++ fi; \ + echo dummy | awk '{ printf("LoadModule %-18s %s\n", modname, modpath); }' \ + modname="$${name}" modpath="$(libexecdir_relative)$${file}" >>$(SRC)/.apaci.install.conf; \ ++ if [ ".$$name" = .frontpage_module ]; then \ ++ echo "</IfDefine>" >>$(SRC)/.apaci.install.conf; \ + fi; \ done; \ echo "" >>$(SRC)/.apaci.install.conf; \ echo "# Reconstruction of the complete module list from all available modules" >>$(SRC)/.apaci.install.conf; \ -@@ -304,6 +308,7 @@ + echo "# (static and shared ones) to achieve correct module execution order." >>$(SRC)/.apaci.install.conf; \ echo "# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]" >>$(SRC)/.apaci.install.conf; \ echo "ClearModuleList" >>$(SRC)/.apaci.install.conf; \ - egrep "^[ ]*(Add|Shared)Module" $(SRC)/Configuration.apaci |\ -+ egrep -v "mod_frontpage.so" |\ - sed -e 's:SharedModule:AddModule:' \ - -e 's:modules/[^/]*/::' \ - -e 's:[ ]lib: mod_:' \ -@@ -324,6 +329,7 @@ +- egrep "^[ ]*(Add|Shared)Module" $(SRC)/Configuration.apaci |\ +- sed -e 's:SharedModule:AddModule:' \ +- -e 's:modules/[^/]*/::' \ +- -e 's:[ ]lib: mod_:' \ +- -e 's:\.[soam].*$$:.c:' >>$(SRC)/.apaci.install.conf; \ ++ for mod in `egrep "^[ ]*(Add|Shared)Module" $(SRC)/Configuration.apaci |\ ++ sed -e 's:[ ]*SharedModule::' \ ++ -e 's:[ ]*AddModule::' \ ++ -e 's:modules/[^/]*/::' \ ++ -e 's:[ ]lib: mod_:' \ ++ -e 's:\.[soam].*$$:.c:'`; do \ ++ if [ ".$$mod" = .mod_frontpage.c ]; then \ ++ echo "<IfDefine FRONTPAGE>" >>$(SRC)/.apaci.install.conf; \ ++ fi; \ ++ echo "AddModule $$mod" >>$(SRC)/.apaci.install.conf; \ ++ if [ ".$$mod" = .mod_frontpage.c ]; then \ ++ echo "</IfDefine>" >>$(SRC)/.apaci.install.conf; \ ++ fi; \ ++ done; \ + fi + @echo "<=== [programs]" + +@@ -394,6 +410,7 @@ echo "$(INSTALL_SCRIPT) $(TOP)/$(SRC)/support/apachectl[*] $(root)$(sbindir)/$${apachectl}"; \ sed -e 's;PIDFILE=.*;PIDFILE=$(runtimedir)/$(TARGET).pid;' \ -e 's;HTTPD=.*;HTTPD=$(sbindir)/$(TARGET);' \ @@ -67,7 +68,7 @@ < $(TOP)/$(SRC)/support/apachectl > $(TOP)/$(SRC)/.apaci.install.tmp && \ $(INSTALL_SCRIPT) $(TOP)/$(SRC)/.apaci.install.tmp $(root)$(sbindir)/$${apachectl}; \ echo "$(INSTALL_DATA) $(TOP)/$(SRC)/support/apachectl.8 $(root)$(mandir)/man8/$${apachectl}.8"; \ -@@ -379,25 +385,32 @@ +@@ -441,25 +458,33 @@ # icons and distributed CGI scripts. install-data: @echo "===> [data: Installing initial data files]" @@ -93,6 +94,7 @@ - -@if [ -f $(root)$(cgidir)/printenv ]; then \ - echo "[PRESERVING EXISTING DATA SUBDIR: $(root)$(cgidir)/]"; \ - else \ ++ $(RM) $(root)$(htdocsdir).default + $(LN) -s $(root)$(doc_prefix) $(root)$(htdocsdir).default +# -@if [ -f $(root)$(cgidir)/printenv ]; then \ +# echo "[PRESERVING EXISTING DATA SUBDIR: $(root)$(cgidir)/]"; \ @@ -112,17 +114,17 @@ fi @echo "Copying tree $(TOP)/icons/ -> $(root)$(iconsdir)/"; \ (cd $(TOP)/icons/ && $(TAR) $(TAROPT) - *) |\ -@@ -431,17 +444,20 @@ +@@ -493,15 +517,17 @@ -e 's;@@ServerRoot@@/icons;$(iconsdir);' \ -e 's;@@ServerRoot@@/cgi-bin;$(cgidir);' \ -e 's;@@ServerRoot@@/proxy;$(proxycachedir);' \ + -e 's;@@ServerRoot@@/srm.conf;$(sysconfdir)/$(TARGET).conf;' \ + -e 's;@@ServerRoot@@/access.conf;$(sysconfdir)/$(TARGET).conf;' \ -e 's;@@ServerRoot@@;$(prefix);g' \ - -e 's;httpd.conf;$(TARGET).conf;' \ - -e 's;logs/accept.lock;$(runtimedir)/$(TARGET).lock;' \ + -e 's;httpd\.conf;$(TARGET).conf;' \ + -e 's;logs/accept\.lock;$(runtimedir)/$(TARGET).lock;' \ -e 's;logs/apache_runtime_status;$(runtimedir)/$(TARGET).scoreboard;' \ - -e 's;logs/httpd.pid;$(runtimedir)/$(TARGET).pid;' \ + -e 's;logs/httpd\.pid;$(runtimedir)/$(TARGET).pid;' \ - -e "s;logs/access_log;$(logfiledir)/$${target_prefix}access_log;" \ - -e "s;logs/error_log;$(logfiledir)/$${target_prefix}error_log;" \ - -e "s;logs/referer_log;$(logfiledir)/$${target_prefix}referer_log;" \ @@ -132,8 +134,5 @@ + -e "s;logs/referer_log;$(logfiledir)/httpd-referer.log;" \ + -e "s;logs/agent_log;$(logfiledir)/httpd-agent.log;" \ -e 's;conf/magic;$(sysconfdir)/magic;' \ - -e 's;conf/mime.types;$(sysconfdir)/mime.types;' \ -+ -e 's;User nobody;User $(conf_user);' \ - -e 's;Group #-1;Group $(conf_group);' \ - -e 's;Port 80;Port $(conf_port);' \ - -e 's;ServerAdmin you@your.address;ServerAdmin $(conf_serveradmin);' \ + -e 's;conf/mime\.types;$(sysconfdir)/mime.types;' \ + -e 's;User nobody;User $(conf_user);' \ diff --git a/www/apache13-fp/files/patch-ag b/www/apache13-fp/files/patch-ag index 4ae02d5..b2b37f8 100644 --- a/www/apache13-fp/files/patch-ag +++ b/www/apache13-fp/files/patch-ag @@ -1,5 +1,5 @@ ---- conf/httpd.conf-dist.orig Sat Dec 12 11:04:29 1998 -+++ conf/httpd.conf-dist Mon Jan 18 17:18:16 1999 +--- conf/httpd.conf-dist.orig Wed May 5 15:17:59 1999 ++++ conf/httpd.conf-dist Mon Sep 6 13:01:08 1999 @@ -97,6 +97,13 @@ #ResourceConfig conf/srm.conf #AccessConfig conf/access.conf @@ -14,30 +14,7 @@ # # Timeout: The number of seconds before receives and sends time out. # -@@ -196,6 +203,22 @@ - # Example: - # LoadModule foo_module libexec/mod_foo.so - -+<IfDefine SSL> -+### Uncomment the following if you wish to use SSL and you need RSAREF: ### -+#LoadFile !librsaref.so.2 -+LoadFile !libcrypto.so.0 -+LoadFile !libssl.so.0 -+LoadModule ssl_module libexec/apache/mod_ssl.so -+AddModule mod_ssl.c -+</IfDefine> -+ -+<IfDefine FRONTPAGE> -+### We need to check if it matters when the frontpage ### -+### module is loaded, before or after the SSL module? ### -+LoadModule frontpage_module libexec/apache/mod_frontpage.so -+AddModule mod_frontpage.c -+</IfDefine> -+ - # - # ExtendedStatus controls whether Apache will generate "full" status - # information (ExtendedStatus On) or just basic information (ExtendedStatus -@@ -241,7 +264,7 @@ +@@ -246,7 +253,7 @@ # don't use Group #-1 on these systems! # User nobody @@ -46,7 +23,7 @@ # # ServerAdmin: Your address, where problems with the server should be -@@ -269,7 +292,7 @@ +@@ -274,7 +281,7 @@ # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # @@ -55,24 +32,24 @@ # # Each directory to which Apache has access, can be configured with respect -@@ -310,7 +333,16 @@ +@@ -315,7 +322,16 @@ # override. Can also be "All", or any combination of "Options", "FileInfo", # "AuthConfig", and "Limit" # -+<IfDefine !FRONTPAGE> - AllowOverride None -+</IfDefine> -+ +<IfDefine FRONTPAGE> +### These are the Minimum options need by the FrontPage Module. +### With out these options set the FrontPage Client will not be +### able to access the server. + AllowOverride AuthConfig Limit Indexes Options +</IfDefine> ++ ++<IfDefine !FRONTPAGE> + AllowOverride None ++</IfDefine> # # Controls who can get stuff from this server. -@@ -342,6 +374,15 @@ +@@ -347,6 +363,15 @@ # </Limit> #</Directory> @@ -88,7 +65,7 @@ # # DirectoryIndex: Name of the file or files to use as a pre-written HTML # directory index. Separate multiple entries with spaces. -@@ -459,7 +500,7 @@ +@@ -467,7 +492,7 @@ # define per-<VirtualHost> access logfiles, transactions will be # logged therein and *not* in this file. # @@ -97,7 +74,7 @@ # # If you would like to have agent and referer logfiles, uncomment the -@@ -472,7 +513,7 @@ +@@ -480,7 +505,7 @@ # If you prefer a single logfile with access, agent, and referer information # (Combined Logfile Format) you can use the following directive. # diff --git a/www/apache13-fp/files/patch-ak b/www/apache13-fp/files/patch-ak index 3e2dd12..905ae48 100644 --- a/www/apache13-fp/files/patch-ak +++ b/www/apache13-fp/files/patch-ak @@ -1,5 +1,5 @@ ---- src/support/apachectl.orig Tue Feb 9 12:00:34 1999 -+++ src/support/apachectl Sat Apr 3 15:40:42 1999 +--- src/support/apachectl.orig Tue Apr 6 15:36:33 1999 ++++ src/support/apachectl Mon Sep 6 13:01:08 1999 @@ -27,6 +27,10 @@ # the path to your httpd binary, including options if necessary HTTPD='/usr/local/apache/src/httpd' @@ -20,20 +20,11 @@ ERROR=0 ARGV="$@" if [ "x$ARGV" = "x" ] ; then -@@ -50,7 +56,7 @@ - # check for pidfile - if [ -f $PIDFILE ] ; then - PID=`cat $PIDFILE` -- if [ ! "x$PID" = "x" ] && kill -0 $PID; then -+ if [ ! "x$PID" = "x" ] && kill -0 $PID > /dev/null 2>&1; then - STATUS="httpd (pid $PID) running" - RUNNING=1 - else -@@ -75,6 +81,18 @@ +@@ -75,6 +81,30 @@ ERROR=3 fi ;; -+ startfp|start_frontpage|start-FP) ++ startfp|fpstart|start-FP) + if [ $RUNNING -eq 1 ]; then + echo "$0 $ARG: httpd (pid $PID) already running" + continue @@ -45,10 +36,22 @@ + ERROR=3 + fi + ;; ++ startfpssl|start-FP-SSL) ++ if [ $RUNNING -eq 1 ]; then ++ echo "$0 $ARG: httpd (pid $PID) already running" ++ continue ++ fi ++ if $HTTPD -DFRONTPAGE -DSSL; then ++ echo "$0 $ARG: httpd started" ++ else ++ echo "$0 $ARG: httpd could not be started" ++ ERROR=3 ++ fi ++ ;; stop) if [ $RUNNING -eq 0 ]; then echo "$0 $ARG: $STATUS" -@@ -82,6 +100,7 @@ +@@ -82,6 +112,7 @@ fi if kill $PID ; then echo "$0 $ARG: httpd stopped" @@ -56,11 +59,12 @@ else echo "$0 $ARG: httpd could not be stopped" ERROR=4 -@@ -153,6 +172,7 @@ +@@ -153,6 +184,8 @@ cat <<EOF start - start httpd -+startfp - start httpd with FrontPage Extentions enabled ++startfp - start httpd with Frontpage enabled ++startfpssl - start httpd with Frontpage and SSL enabled stop - stop httpd restart - restart httpd if running by sending a SIGHUP or start if not running diff --git a/www/apache13-fp/files/patch-al b/www/apache13-fp/files/patch-al index 2b3796c..b355a69 100644 --- a/www/apache13-fp/files/patch-al +++ b/www/apache13-fp/files/patch-al @@ -1,11 +1,11 @@ ---- src/support/log_server_status.orig Fri Jan 1 13:05:34 1999 -+++ src/support/log_server_status Mon Jan 18 17:18:16 1999 +--- src/support/log_server_status.orig Fri Jun 4 19:54:19 1999 ++++ src/support/log_server_status Fri Sep 3 15:53:16 1999 @@ -67,10 +67,10 @@ # require 'sys/socket.ph'; --$wherelog = "/var/log/graph/"; # Logs will be like "/var/log/graph/960312" -+$wherelog = "/var/log/httpd-status-"; # Logs will be like "/var/log/httpd-status-960312" +-$wherelog = "/var/log/graph/"; # Logs will be like "/var/log/graph/19960312" ++$wherelog = "/var/log/httpd-status-"; $server = "localhost"; # Name of server, could be "www.foo.com" $port = "80"; # Port on server -$request = "/status/?auto"; # Request to send @@ -13,13 +13,8 @@ sub tcp_connect { -@@ -93,11 +93,11 @@ - ### Main - - { -- $date=`date +%y%m%d:%H%M%S`; -+ $date=`LC_TIME=C date +%y%m%d:%H%M%S`; - chop($date); +@@ -100,7 +100,7 @@ + chomp($date); ($day,$time)=split(/:/,$date); $res=&tcp_connect($server,$port); - open(OUT,">>$wherelog$day"); diff --git a/www/apache13-fp/files/patch-as b/www/apache13-fp/files/patch-as new file mode 100644 index 0000000..d7ecc4a --- /dev/null +++ b/www/apache13-fp/files/patch-as @@ -0,0 +1,11 @@ +--- config.layout.orig Thu Jul 29 13:12:43 1999 ++++ config.layout Thu Aug 19 22:30:39 1999 +@@ -41,7 +41,7 @@ + sysconfdir: $prefix/etc+ + datadir: $prefix/share+ + iconsdir: $datadir/icons +- htdocsdir: $datadir/htdocs ++ htdocsdir: $datadir/data + cgidir: $datadir/cgi-bin + includedir: $prefix/include+ + localstatedir: $prefix/var+ diff --git a/www/apache13-fp/files/patch-at b/www/apache13-fp/files/patch-at index c555f77..8a672c8 100644 --- a/www/apache13-fp/files/patch-at +++ b/www/apache13-fp/files/patch-at @@ -1,12 +1,12 @@ ---- src/support/apxs.pl.orig Fri Jan 1 16:00:15 1999 -+++ src/support/apxs.pl Mon Jan 18 17:18:17 1999 -@@ -393,8 +393,7 @@ - } +--- src/support/apxs.pl.orig Thu Aug 19 22:57:08 1999 ++++ src/support/apxs.pl Thu Aug 19 23:02:17 1999 +@@ -426,8 +426,7 @@ my $t = $f; $t =~ s|^.+/([^/]+)$|$1|; -- push(@cmds, "cp $f $CFG_LIBEXECDIR/$t"); -- push(@cmds, "chmod 755 $CFG_LIBEXECDIR/$t"); -+ push(@cmds, "install -c -m 555 -o root -g wheel $f $CFG_LIBEXECDIR/$t"); + if ($opt_i) { +- push(@cmds, "cp $f $CFG_LIBEXECDIR/$t"); +- push(@cmds, "chmod 755 $CFG_LIBEXECDIR/$t"); ++ push(@cmds, "install -c -m 555 -o root -g wheel $f $CFG_LIBEXECDIR/$t"); + } # determine module symbolname and filename - my $filename = ''; diff --git a/www/apache13-fp/files/patch-fd b/www/apache13-fp/files/patch-fd index 81d1cb8..f6930f3 100644 --- a/www/apache13-fp/files/patch-fd +++ b/www/apache13-fp/files/patch-fd @@ -1,59 +1,55 @@ -*** src/support/suexec.h.orig Tue Mar 31 06:54:09 1998 ---- src/support/suexec.h Thu May 21 19:18:25 1998 -*************** -*** 56,61 **** ---- 56,72 ---- - */ - - /* -+ * "FPEXE modification made on 98.05.21 by Scot Hetzel (hetzels@westbend.net) -+ * based on previous FPEXE modifications supplied by Mark Wormgoor -+ * (riddles@ipe.nl) -+ * -+ * Changes were made in order to use Suexec and Frontpage 98 at the same time. -+ * After we change to the target_uid and target_gid. We check if cmd = FPEXE, -+ * if it does then we execute the cmd without performing any further tests. -+ * -+ */ -+ -+ /* - * suexec.h -- user-definable variables for the suexec wrapper code. - */ - -*************** -*** 129,134 **** ---- 140,173 ---- - */ - #ifndef DOC_ROOT - #define DOC_ROOT "/usr/local/apache/htdocs" -+ #endif -+ -+ /* -+ * FPEXE, FPSTUB -+ * FPSTUBDIR -- We are running frontpage and we don't need to run -+ * fpexe suid, since it's already set suid. Also, the -+ * dir-rights are incorrect and so on... -+ */ -+ #ifndef FPEXE -+ #define FPEXE "fpexe" -+ #endif -+ -+ #ifndef FPSTUB -+ #define FPSTUB "/usr/local/frontpage/version3.0/apache-fp/_vti_bin/fpexe" -+ #endif -+ -+ #ifndef FPSTUBDIR -+ #define FPSTUBDIR "/usr/local/frontpage/currentversion/apache-fp/_vti_bin" -+ #endif -+ -+ /* -+ * SYSTEM_CGI -- Define as the cgi directory for system-wide CGI's -+ * Note that UID/GID of the cgi or the directory are -+ * NOT matched if they're in this directory, although -+ * all the other checks still apply. Caveat Emptor. +--- src/support/suexec.h.orig Fri Jan 1 13:05:35 1999 ++++ src/support/suexec.h Mon Sep 6 13:12:55 1999 +@@ -56,6 +56,17 @@ + */ + + /* ++ * "FPEXE modification made on 98.05.21 by Scot Hetzel (hetzels@westbend.net) ++ * based on previous FPEXE modifications supplied by Mark Wormgoor ++ * (riddles@ipe.nl) ++ * ++ * Changes were made in order to use Suexec and Frontpage 98 at the same time. ++ * After we change to the target_uid and target_gid. We check if cmd = FPEXE, ++ * if it does then we execute the cmd without performing any further tests. ++ * + */ -+ #ifndef SYSTEM_CGI -+ #define SYSTEM_CGI "/usr/local/www/cgi-bin" - #endif - - /* ++ ++/* + * suexec.h -- user-definable variables for the suexec wrapper code. + * (See README.configure on how to customize these variables.) + */ +@@ -130,6 +141,34 @@ + */ + #ifndef DOC_ROOT + #define DOC_ROOT "/usr/local/apache/htdocs" ++#endif ++ ++/* ++ * FPEXE, FPSTUB ++ * FPSTUBDIR -- We are running frontpage and we don't need to run ++ * fpexe suid, since it's already set suid. Also, the ++ * dir-rights are incorrect and so on... ++ */ ++#ifndef FPEXE ++#define FPEXE "fpexe" ++#endif ++ ++#ifndef FPSTUB ++#define FPSTUB "/usr/local/frontpage/version3.0/apache-fp/_vti_bin/fpexe" ++#endif ++ ++#ifndef FPSTUBDIR ++#define FPSTUBDIR "/usr/local/frontpage/currentversion/apache-fp/_vti_bin" ++#endif ++ ++/* ++ * SYSTEM_CGI -- Define as the cgi directory for system-wide CGI's ++ * Note that UID/GID of the cgi or the directory are ++ * NOT matched if they're in this directory, although ++ * all the other checks still apply. Caveat Emptor. ++*/ ++#ifndef SYSTEM_CGI ++#define SYSTEM_CGI "/usr/local/www/cgi-bin" + #endif + + /* diff --git a/www/apache13-fp/files/patch-fe b/www/apache13-fp/files/patch-fe index 03fc406..37fc9d5 100644 --- a/www/apache13-fp/files/patch-fe +++ b/www/apache13-fp/files/patch-fe @@ -1,146 +1,168 @@ -*** src/support/suexec.c.orig Tue Apr 21 15:14:06 1998 ---- src/support/suexec.c Fri May 22 17:59:43 1998 -*************** -*** 70,75 **** ---- 70,98 ---- - * - * - */ +--- src/support/suexec.c.orig Mon Jun 21 19:51:41 1999 ++++ src/support/suexec.c Thu Sep 9 18:58:04 1999 +@@ -70,11 +70,35 @@ + * + * + */ ++/* ++ * "System" CGI modification 97.05.10 by Rick Franchuk (rickf@netnation.com) ++ * ++ * I found that while it's great to make scripts run under the UID and GID ++ * specified in httpd.conf or what /etc/passwd says is 'cool', suEXEC can ++ * really put a damper on 'System' cgi's, forcing copies of the scripts ++ * to be installed into users' home directories. That didn't seem very ++ * fitting... so I changed it so that the target UID check is disabled in ++ * a system directory #defined in suexec+.h. I hope you all find it useful. ++ * ++ * The docroot check had to be bypassed to allow functionality for VirtualHost ++ * entries. I'm somewhat suprised noone encountered that behavior before. ++ */ + /* -+ * "System" CGI modification 97.05.10 by Rick Franchuk (rickf@netnation.com) -+ * -+ * I found that while it's great to make scripts run under the UID and GID -+ * specified in httpd.conf or what /etc/passwd says is 'cool', suEXEC can -+ * really put a damper on 'System' cgi's, forcing copies of the scripts -+ * to be installed into users' home directories. That didn't seem very -+ * fitting... so I changed it so that the target UID check is disabled in -+ * a system directory #defined in suexec+.h. I hope you all find it useful. -+ * -+ * The docroot check had to be bypassed to allow functionality for VirtualHost -+ * entries. I'm somewhat suprised noone encountered that behavior before. -+ */ -+ /* -+ * "FPEXE modification made on 98.05.19 by Scot Hetzel (hetzels@westbend.net) -+ * based on previous FPEXE modifications supplied by Mark Wormgoor -+ * (riddles@ipe.nl) -+ * -+ * Changes were made in order to use Suexec and Frontpage 98 at the same time. -+ * After we change to the target_uid and target_gid. We check if cmd = FPEXE, -+ * if it does then we execute the cmd without performing any further tests. -+ * -+ */ - - #include "conf.h" - #include <sys/param.h> -*************** -*** 393,398 **** ---- 416,429 ---- - } - - /* -+ * We logged everything, changed to the target uid/gid, and know the -+ * user is ok. We run fpexe now and bail out before anything goes wrong. -+ */ -+ #ifdef FPEXE -+ if ((strcmp(cmd, FPEXE)) != NULL) { -+ #endif -+ -+ /* - * Get the current working directory, as well as the proper - * document root (dependant upon whether or not it is a - * ~userdir request). Error out if we cannot get either one, -*************** -*** 423,432 **** ---- 454,468 ---- - } - } - -+ /* -+ * This section must be commented out to work properly with -+ * VirtualHosts running CGI in thier own directories. -+ * - if ((strncmp(cwd, dwd, strlen(dwd))) != 0) { - log_err("command not in docroot (%s/%s)\n", cwd, cmd); - exit(114); - } -+ */ - - /* - * Stat the cwd and verify it is a directory, or error out. -*************** -*** 472,477 **** ---- 508,516 ---- - * Error out if the target name/group is different from - * the name/group of the cwd or the program. - */ -+ #ifdef SYSTEM_CGI -+ if (strncmp(cwd, SYSTEM_CGI, strlen(SYSTEM_CGI))) { -+ #endif - if ((uid != dir_info.st_uid) || - (gid != dir_info.st_gid) || - (uid != prg_info.st_uid) || -*************** -*** 482,487 **** ---- 521,530 ---- - prg_info.st_uid, prg_info.st_gid); - exit(120); - } -+ #ifdef SYSTEM_CGI -+ } -+ #endif -+ - /* - * Error out if the program is not executable for the user. - * Otherwise, she won't find any error in the logs except for -*************** -*** 493,498 **** ---- 536,584 ---- - } - - clean_env(); -+ -+ #ifdef FPEXE -+ } -+ else { -+ -+ /* The following taken from mod_frontpage.c to check permissions */ -+ -+ /* -+ * We can't stat the stub dir. Make sure the stub directory is not -+ * owned by root and not group/world writable -+ */ -+ if ((lstat(FPSTUBDIR, &dir_info) == -1 || -+ dir_info.st_uid || -+ (dir_info.st_mode & (S_IWGRP | S_IWOTH)) || -+ (!S_ISDIR(dir_info.st_mode)))) { -+ /* -+ * User recovery: set directory to be owned by by root with -+ * permissions r*x*-x*-x. -+ */ -+ log_err("Incorrect permissions on stub directory \"%-.1024s\"", -+ FPSTUBDIR); -+ exit (250); -+ } -+ -+ /* -+ * We can't stat the stub. Make sure the stub is not owned by root, -+ * set-uid, set-gid, and is not group/world writable or executable. -+ */ -+ if ((stat(cmd, &prg_info) == -1 || -+ prg_info.st_uid || -+ !(prg_info.st_mode & S_ISUID) || -+ (prg_info.st_mode & S_ISGID) || -+ (prg_info.st_mode & (S_IWGRP | S_IWOTH)) || -+ !(prg_info.st_mode & (S_IXGRP | S_IXOTH)))) { -+ /* -+ * User recovery: set stub to be owned by by root with permissions -+ * r*s*-x*-x. -+ */ -+ log_err("Incorrect permissions on stub \"%-.1024s\"", cmd); -+ exit (251); -+ } -+ } -+ #endif - - /* - * Be sure to close the log file so the CGI can't ++ * "FPEXE modification made on 98.05.19 by Scot Hetzel (hetzels@westbend.net) ++ * based on previous FPEXE modifications supplied by Mark Wormgoor ++ * (riddles@ipe.nl) ++ * ++ * Changes were made in order to use Suexec and Frontpage 98 at the same time. ++ * After we change to the target_uid and target_gid. We check if cmd = FPEXE, ++ * if it does then we execute the cmd without performing any further tests. ++ * ++ */ + + #include "ap_config.h" + #include <sys/param.h> + #include <sys/stat.h> + #include <sys/types.h> ++#include <login_cab.h> + + #include <stdarg.h> + +@@ -250,6 +274,7 @@ + char *cmd; /* command to be executed */ + char cwd[AP_MAXPATH]; /* current working directory */ + char dwd[AP_MAXPATH]; /* docroot working directory */ ++ login_cap_t *lc; /* user resource limits */ + struct passwd *pw; /* password entry holder */ + struct group *gr; /* group entry holder */ + struct stat dir_info; /* directory info holder */ +@@ -404,6 +429,19 @@ + } + + /* ++ * Apply user resource limits based on login class. ++ */ ++ if ((lc = login_getclassbyname(pw->pw_class, pw)) == NULL) { ++ log_err("login_getclassbyname() failed\n"); ++ exit(248); ++ } ++ ++ if ((setusercontext(lc, pw, uid, LOGIN_SETRESOURCES)) != 0) { ++ log_err("setusercontext() failed\n"); ++ exit(249); ++ } ++ ++ /* + * Change UID/GID here so that the following tests work over NFS. + * + * Initialize the group access list for the target user, +@@ -423,6 +461,14 @@ + } + + /* ++ * We logged everything, changed to the target uid/gid, and know the ++ * user is ok. We run fpexe now and bail out before anything goes wrong. ++ */ ++#ifdef FPEXE ++ if ((strcmp(cmd, FPEXE)) != NULL) { ++#endif ++ ++ /* + * Get the current working directory, as well as the proper + * document root (dependant upon whether or not it is a + * ~userdir request). Error out if we cannot get either one, +@@ -453,10 +499,15 @@ + } + } + ++ /* ++ * This section must be commented out to work properly with ++ * VirtualHosts running CGI in thier own directories. ++ * + if ((strncmp(cwd, dwd, strlen(dwd))) != 0) { + log_err("command not in docroot (%s/%s)\n", cwd, cmd); + exit(114); + } ++ */ + + /* + * Stat the cwd and verify it is a directory, or error out. +@@ -502,6 +553,9 @@ + * Error out if the target name/group is different from + * the name/group of the cwd or the program. + */ ++#ifdef SYSTEM_CGI ++ if (strncmp(cwd, SYSTEM_CGI, strlen(SYSTEM_CGI))) { ++#endif + if ((uid != dir_info.st_uid) || + (gid != dir_info.st_gid) || + (uid != prg_info.st_uid) || +@@ -513,6 +567,10 @@ + prg_info.st_uid, prg_info.st_gid); + exit(120); + } ++#ifdef SYSTEM_CGI ++ } ++#endif ++ + /* + * Error out if the program is not executable for the user. + * Otherwise, she won't find any error in the logs except for +@@ -524,6 +582,49 @@ + } + + clean_env(); ++ ++#ifdef FPEXE ++ } ++ else { ++ ++ /* The following taken from mod_frontpage.c to check permissions */ ++ ++ /* ++ * We can't stat the stub dir. Make sure the stub directory is not ++ * owned by root and not group/world writable ++ */ ++ if ((lstat(FPSTUBDIR, &dir_info) == -1 || ++ dir_info.st_uid || ++ (dir_info.st_mode & (S_IWGRP | S_IWOTH)) || ++ (!S_ISDIR(dir_info.st_mode)))) { ++ /* ++ * User recovery: set directory to be owned by by root with ++ * permissions r*x*-x*-x. ++ */ ++ log_err("Incorrect permissions on stub directory \"%-.1024s\"", ++ FPSTUBDIR); ++ exit (250); ++ } ++ ++ /* ++ * We can't stat the stub. Make sure the stub is not owned by root, ++ * set-uid, set-gid, and is not group/world writable or executable. ++ */ ++ if ((stat(cmd, &prg_info) == -1 || ++ prg_info.st_uid || ++ !(prg_info.st_mode & S_ISUID) || ++ (prg_info.st_mode & S_ISGID) || ++ (prg_info.st_mode & (S_IWGRP | S_IWOTH)) || ++ !(prg_info.st_mode & (S_IXGRP | S_IXOTH)))) { ++ /* ++ * User recovery: set stub to be owned by by root with permissions ++ * r*s*-x*-x. ++ */ ++ log_err("Incorrect permissions on stub \"%-.1024s\"", cmd); ++ exit (251); ++ } ++ } ++#endif + + /* + * Be sure to close the log file so the CGI can't diff --git a/www/apache13-fp/files/patch-fh b/www/apache13-fp/files/patch-fh index 82895f0..a5090a0 100644 --- a/www/apache13-fp/files/patch-fh +++ b/www/apache13-fp/files/patch-fh @@ -1,24 +1,16 @@ -*** src/include/httpd.h.orig Thu May 21 19:37:29 1998 ---- src/include/httpd.h Fri May 22 16:57:19 1998 -*************** -*** 689,695 **** - - char *unparsed_uri; /* the uri without any parsing performed */ - char *uri; /* the path portion of the URI */ -! char *filename; - char *path_info; - char *args; /* QUERY_ARGS, if any */ - struct stat finfo; /* ST_MODE set to zero if no such file */ ---- 689,700 ---- - - char *unparsed_uri; /* the uri without any parsing performed */ - char *uri; /* the path portion of the URI */ -! char *execfilename; /* physical filename to exec */ -! char *filename; /* logical filename to exec -- always the same -! * except for FrontPage CGI programs where we -! * will execute the CGI program in -! * /usr/local/frontpage.... -! */ - char *path_info; - char *args; /* QUERY_ARGS, if any */ - struct stat finfo; /* ST_MODE set to zero if no such file */ +--- src/include/httpd.h.orig Mon Aug 16 12:57:53 1999 ++++ src/include/httpd.h Mon Sep 6 13:12:55 1999 +@@ -774,7 +774,12 @@ + + char *unparsed_uri; /* the uri without any parsing performed */ + char *uri; /* the path portion of the URI */ +- char *filename; ++ char *execfilename; /* physical filename to exec */ ++ char *filename; /* logical filename to exec -- always the same ++ * except for FrontPage CGI programs where we ++ * will execute the CGI program in ++ * /usr/local/frontpage.... ++ */ + char *path_info; + char *args; /* QUERY_ARGS, if any */ + struct stat finfo; /* ST_MODE set to zero if no such file */ diff --git a/www/apache13-fp/files/patch-fi b/www/apache13-fp/files/patch-fi index 2e79725..ce9eefc 100644 --- a/www/apache13-fp/files/patch-fi +++ b/www/apache13-fp/files/patch-fi @@ -1,5 +1,5 @@ ---- src/main/http_request.c.orig Sun Mar 7 09:05:36 1999 -+++ src/main/http_request.c Sat Apr 3 16:02:26 1999 +--- src/main/http_request.c.orig Fri May 21 07:16:21 1999 ++++ src/main/http_request.c Mon Sep 6 13:12:55 1999 @@ -187,6 +187,8 @@ return OK; } @@ -9,7 +9,7 @@ #ifdef HAVE_DRIVE_LETTERS /* If the directory is x:\, then we don't want to strip * the trailing slash since x: is not a valid directory. -@@ -509,6 +511,7 @@ +@@ -511,6 +513,7 @@ res = ap_parse_htaccess(&htaccess_conf, r, overrides_here, ap_pstrdup(r->pool, test_dirname), sconf->access_name); diff --git a/www/apache13-fp/files/patch-fj b/www/apache13-fp/files/patch-fj index e0b1414..ebc0268 100644 --- a/www/apache13-fp/files/patch-fj +++ b/www/apache13-fp/files/patch-fj @@ -1,19 +1,11 @@ -*** src/main/util.c.orig Sat May 9 09:27:27 1998 ---- src/main/util.c Fri May 22 16:57:19 1998 -*************** -*** 582,588 **** - char *res; - - for (x = 0; (*line)[x]; x++) { -! if (ap_isspace((*line)[x])) { - pos = x; - break; - } ---- 582,588 ---- - char *res; - - for (x = 0; (*line)[x]; x++) { -! if (ap_isspace((*line)[x]) && ((*line)[x] & 0x80)==0) { - pos = x; - break; - } +--- src/main/util.c.orig Sat Aug 14 03:35:50 1999 ++++ src/main/util.c Mon Sep 6 13:12:55 1999 +@@ -635,7 +635,7 @@ + char *res; + + for (x = 0; (*line)[x]; x++) { +- if (ap_isspace((*line)[x])) { ++ if (ap_isspace((*line)[x]) && ((*line)[x] & 0x80)==0) { + pos = x; + break; + } |