Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Oct 2001 23:07:01 -0600 (CST)
From:      "Scot W. Hetzel" <hetzels@westbend.net>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/31626: Update to mod_frontpage v5, removal of FP Exts
Message-ID:  <200110300507.f9U571d41420@mail.westbend.net>

next in thread | raw e-mail | index | archive | help

>Number:         31626
>Category:       ports
>Synopsis:       Update to mod_frontpage v5, removal of FP Exts
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 29 21:10:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Scot W. Hetzel
>Release:        FreeBSD 4.4-STABLE i386
>Organization:
West Bend Internet
>Environment:
System: FreeBSD wbiW009.westbend.net 4.4-STABLE FreeBSD 4.4-STABLE #0: Sat Sep 29 23:33:53 CDT 2001 root@wbiW009.westbend.net:/usr/obj/usr/src/sys/WBIW09-SMP i386


>Description:
	Removal of the MS Frontpage Extentions to a seperate port
	(www/frontpage5 - See PR 31625).

	Update to mod_frontpage v5.0.2.2510

>How-To-Repeat:
>Fix:

    Changed Files:
        Makefile
        distinfo
        pkg-comment
        pkg-descr
        pkg-install
        pkg-plist
        files/apache.sh.tmpl
        files/mod_frontpage.c
        files/patch-fi
        files/patch-lang.en

    Added Files:
        pkg-message

    Removed Files:
        pkg-message.bsdi
        pkg-message.freebsd
        files/change_server.alpha
        files/change_server.bsdi
        files/fp_install.alpha
        files/fp_install.bsdi
        files/patch-fa
        files/patch-fb
        files/patch-fk
        files/patch-fn

Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/Makefile,v
retrieving revision 1.28
diff -u -r1.28 Makefile
--- Makefile	2001/10/20 14:09:30	1.28
+++ Makefile	2001/10/27 21:02:01
@@ -8,11 +8,9 @@
 PORTNAME=	apache
 PKGNAMESUFFIX=	_fp
 PORTVERSION=	1.3.22
-#PORTREVISION=	1
+PORTREVISION=	1
 CATEGORIES=	www
 MASTER_SITES=	http://www.apache.org/dist/httpd/ \
-		ftp://ftp.microsoft.com/products/frontpage/ \
-		ftp://www.westbend.net/Mirrors/ftp.microsoft.com/Products/frontpage/ \
 		http://www.freebsd.org/gifs/ \
 		http://officeupdate.microsoft.com/frontpage/wpp/serk/ \
 		ftp://ftp.ccs.neu.edu/net/mirrors/ftp.apache.org/apache/dist/httpd/ \
@@ -30,7 +28,7 @@
 		ftp://ftp.iodynamics.com/pub/mirror/apache/dist/httpd/ \
 		ftp://apache.nextpath.com/pub/apache/dist/httpd/
 DISTNAME=	${PORTNAME}_${PORTVERSION}
-DISTFILES=	${APACHE} ${FRONTPAGE} powerlogo.gif fplogo.gif
+DISTFILES=	${APACHE} powerlogo.gif fplogo.gif
 
 MAINTAINER=	hetzels@westbend.net
 
@@ -39,56 +37,29 @@
 
 APACHE=		${DISTNAME}${EXTRACT_SUFX}
 
+.ifndef WITHOUT_LIBEXPAT
+LIB_DEPENDS+=	expat.2:${PORTSDIR}/textproc/expat2
+.endif
+
 .include <bsd.port.pre.mk>
 
 ONLY_FOR_ARCHS=	i386 alpha
 
-.if ${ARCH} == i386
-.ifdef WANT_BSDI_EXT
-FRONTPAGE=	fp40.bsdi.tar.Z
-EXTRA_PATCHES=	${FILESDIR}/change_server.bsdi ${FILESDIR}/fp_install.bsdi
-.if ${OSVERSION} < 4300001 || ( ${OSVERSION} >= 500000 && ${OSVERSION} < 500014 )
-PKGMESSAGE=	pkg-message.bsdi
-.endif
-.else
-.if (defined(BATCH) && ${BATCH} == YES ) || !exists(/usr/lib/compat/libc.so.3)
-LIB_DEPENDS+=	c.3:${PORTSDIR}/misc/compat3x
-.endif
-FRONTPAGE=	fp40.freebsd.tar.Z
-.if ${OSVERSION} < 4300001 || ( ${OSVERSION} >= 500000 && ${OSVERSION} < 500014 )
-PKGMESSAGE=	pkg-message.freebsd
-.endif
-.endif
-.elif ${ARCH} == alpha
-FRONTPAGE=	fp40.alpha.tar.Z
-EXTRA_PATCHES=	${FILESDIR}/change_server.alpha ${FILESDIR}/fp_install.alpha
-.endif
+FP_VER=		5.0
 
 EXTRACT_ONLY=	${APACHE}
 
 BATCH?=		NO
 CHMOD?=		/bin/chmod
-FP_REV=		version4.0
-FPINSTALL=	frontpage/${FP_REV}/fp_install.sh
-CHANGESERVER=	frontpage/${FP_REV}/change_server.sh
-FPSETPERM=	frontpage/${FP_REV}/set_default_perms.sh
-README=		frontpage/${FP_REV}/readme.htm
-SERK=		frontpage/${FP_REV}/serk
-FPHTTPD=	${PREFIX}/frontpage/${FP_REV}/apache-fp
-MOD_FPDOCDIR=	${DOCSDIR}/manual/frontpage
+
 MOD_FP=		${FILESDIR}/mod_frontpage.c
 IMAGES_DIR=	${DOCSDIR}/manual/images
 
-INSTALL_FILE=	${INSTALL} -c -m 555 -o bin -g bin
-
-PLIST=		${WRKDIR}/PLIST
-PLIST_SUB=	FP_REV=${FP_REV}
-
 #
 # Set APACHE_PERF_TUNING env. variable to YES to get maximum performance
 #
-HTTPD_USER?=	apache
-HTTPD_GROUP?=	apache
+HTTPD_USER?=	www
+HTTPD_GROUP?=	www
 USER_WEB_DIR?=	public_html
 
 HAS_CONFIGURE=	yes
@@ -111,7 +82,9 @@
 # Currently perl version doesn't matter
 USE_PERL5=	YES
 
-OPTIM=		-DHARD_SERVER_LIMIT=512 \
+OPTIM=		-D_LARGEFILE_SOURCE \
+		-D_FILE_OFFSET_BITS=64 \
+		-DHARD_SERVER_LIMIT=512 \
 		-DDOCUMENT_LOCATION=\\"${PREFIX}/www/data/\\" \
 		-DDEFAULT_PATH=\\"/bin:/usr/bin:${PREFIX}/bin\\"
 
@@ -130,6 +103,11 @@
 		OPTIM='${OPTIM}' \
 		PATH="${PREFIX}/bin:${PATH}"
 
+.ifndef WITHOUT_LIBEXPAT
+CONFIGURE_ENV+=	INCLUDES="${INCLUDES} -I ${LOCALBASE}/includes" \
+		LDFLAGS="${LDFLAGS} -L ${LOCALBASE}/lib"
+.endif
+
 MAN1=	dbmmanage.1 htdigest.1 htpasswd.1
 MAN8=	ab.8 apachectl.8 apxs.8 httpd.8 logresolve.8 rotatelogs.8
 
@@ -141,46 +119,17 @@
 			--suexec-userdir=${USER_WEB_DIR} \
 			--suexec-safepath='/bin:/usr/bin:${PREFIX}/bin'
 MAN8+=	suexec.8
+PLIST_SUB+=	SUEXEC=""
+.else
+PLIST_SUB+=	SUEXEC="@comment "
 .endif
 
-.if ${OSVERSION} < 430001 || ( ${OSVERSION} >= 500000 && ${OSVERSION} < 500014 )
-pre-extract:
-	@if ! ${LDCONFIG} -r | ${GREP} -q -e "-ldescrypt"; then \
-	   ${ECHO} ; \
-	   ${ECHO} "WARNING: MS FrontPage Extentions require the DES Library"; \
-	   ${ECHO} "  Install the DES Library, then build apache-fp"; \
-	   ${ECHO} ; \
-	   ${ECHO} "  FreeBSD Handbook - Security (chapter 6)"; \
-	   ${ECHO} "    http://www.freebsd.org/handbook/security.html#CRYPT"; \
-	   ${ECHO} "  FAQ - I live outside the US. Can I use DES encryption?"; \
-	   ${ECHO} "    http://www.freebsd.org/FAQ/install.html#AEN629"; \
-	   ${ECHO} ; \
-	   ${FALSE} ; \
-	fi
-.endif
-
-post-extract:
-	@${ECHO} "===>  Extracting FrontPage install scripts"
-	cd ${WRKSRC} && \
-	${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/${FRONTPAGE} \
-		${EXTRACT_AFTER_ARGS} ${FPINSTALL} ${CHANGESERVER} \
-		${README} ${FPSETPERM}
-
-.if !defined(PATCH_DEBUG)
 post-patch:
+.if !defined(PATCH_DEBUG)
 	@ cd ${WRKSRC} \
 		&& find . -type f -name "*.orig" -print | xargs ${RM} -f
 .endif
 
-post-configure:
-.ifndef NO_SUEXEC
-	${CP} ${PKGDIR}/pkg-plist ${PLIST}
-.else
-	${CAT} ${PKGDIR}/pkg-plist | ${GREP} -v sbin/suexec > ${PLIST}
-.endif
-
-IMAGES=		apache_pb.gif fplogo.gif powerlogo.gif
-
 # Create apache user and group
 pre-install:
 	@PKG_PREFIX=${PREFIX} BATCH=${BATCH} PKG_USER=${HTTPD_USER} \
@@ -191,6 +140,7 @@
 		${ECHO} "Installing ${PREFIX}/etc/rc.d/apache.sh file."; \
 		${SED}	-e 's;PREFIX;${PREFIX};' \
 			-e 's;PERL5;${PERL};' \
+			-e 's;FP_VER;${FP_VER};' \
 		< ${FILESDIR}/apache.sh.tmpl > ${PREFIX}/etc/rc.d/apache.sh; \
 		${CHMOD} 751 ${PREFIX}/etc/rc.d/apache.sh; \
 	fi
@@ -198,20 +148,7 @@
 	@${INSTALL} -c -m 644 ${DISTDIR}/fplogo.gif ${IMAGES_DIR}
 	@${INSTALL} -c -m 644 ${DOCSDIR}/apache_pb.gif ${IMAGES_DIR}
 	@( cd ${DOCSDIR} ; if [ -h images ] ; then ${RM} -f images ; fi ; ln -fs manual/images images)
-	# Untar frontpage extentions
-	@(cd ${PREFIX} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/${FRONTPAGE} ${EXTRACT_AFTER_ARGS})
-	@${RM} ${FPHTTPD}/httpd ${FPHTTPD}/httpd.Compat
-	@${MKDIR} ${MOD_FPDOCDIR}
-	@${CP} ${PREFIX}/${README} ${MOD_FPDOCDIR}/index.html
-	@${LN} -fs ${PREFIX}/${SERK} ${MOD_FPDOCDIR}/serk
-	@${INSTALL_FILE} ${WRKSRC}/${FPINSTALL} ${PREFIX}/${FPINSTALL}-dist
-	@${INSTALL_FILE} ${WRKSRC}/${CHANGESERVER} ${PREFIX}/${CHANGESERVER}-dist
-	@${INSTALL_FILE} ${WRKSRC}/${FPSETPERM} ${PREFIX}/${FPSETPERM}
 	@PKG_PREFIX=${PREFIX} BATCH=${BATCH} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
-.if ${OSVERSION} < 430001 || ( ${OSVERSION} >= 500000 && ${OSVERSION} < 500014 )
-.if ${ARCH} == i386
 	@${CAT} ${PKGMESSAGE}
-.endif
-.endif
 
 .include <bsd.port.post.mk>
Index: distinfo
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/distinfo,v
retrieving revision 1.16
diff -u -r1.16 distinfo
--- distinfo	2001/10/20 14:09:30	1.16
+++ distinfo	2001/10/27 21:05:16
@@ -1,6 +1,3 @@
 MD5 (apache_1.3.22.tar.gz) = 77d34c0ac49c3af2416b786228007f90
-MD5 (fp40.freebsd.tar.Z) = 8893bec896e36d3f4a0e20b52ad9f5d7
-MD5 (fp40.bsdi.tar.Z) = f469ea85b69d69f80f32c58fb0d273c4
-MD5 (fp40.alpha.tar.Z) = 6e6832c9dbe0975420020c06da9ae44e
 MD5 (powerlogo.gif) = 0f106073b3c7844cf22d4df126b27c62
 MD5 (fplogo.gif) = db0fd186b50fde14ff2ec638382a85e6
Index: pkg-comment
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/pkg-comment,v
retrieving revision 1.4
diff -u -r1.4 pkg-comment
--- pkg-comment	2000/04/14 18:16:03	1.4
+++ pkg-comment	2001/10/26 23:11:15
@@ -1 +1 @@
-The Apache webserver with w/MS Frontpage 2000 Extentions
+The Apache webserver with MS Frontpage Module
Index: pkg-descr
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/pkg-descr,v
retrieving revision 1.3
diff -u -r1.3 pkg-descr
--- pkg-descr	2000/01/03 03:36:37	1.3
+++ pkg-descr	2001/10/26 23:20:53
@@ -9,9 +9,9 @@
 includes many frequently requested new features, and has an API which
 Allows it to be extended to meet users' needs more easily.
 
-Microsoft Frontpage Extentions allows web administrators and authors to
+Microsoft Frontpage module allows web administrators and authors to
 remotely manage, create, modify, or delete web pages on the Apache server
-using Microsoft FrontPage 2000.
+using the Microsoft FrontPage Extentions.
 
 Documentation
 -------------
@@ -19,4 +19,7 @@
 All the documentation is on-line on the WWW, via the URL's:
 
    Apache    - http://www.apache.org/httpd.html
-   FrontPage - http://officeupdate.microsoft.com/frontpage/wpp/serk/
+   FrontPage - http://www.microsoft.com/frontpage
+             - http://www.microsoft.com/technet/prodtechnol/sharepnt/proddocs/admindoc/ows000.asp
+             - http://www.microsoft.com/technet/prodtechnol/sharepnt/proddocs/admindoc/owse01.asp
+	     - http://www.microsoft.com/technet/prodtechnol/sharepnt/proddocs/admindoc/owse02.asp
Index: pkg-install
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/pkg-install,v
retrieving revision 1.5
diff -u -r1.5 pkg-install
--- pkg-install	2001/10/20 14:09:30	1.5
+++ pkg-install	2001/10/27 00:00:39
@@ -5,8 +5,8 @@
 # Created by: hetzels@westbend.net
 
 PKG_BATCH=${BATCH:=NO}
-PKG_USER=${PKG_USER:=apache}
-PKG_GROUP=${PKG_GROUP:=apache}
+PKG_USER=${PKG_USER:=www}
+PKG_GROUP=${PKG_GROUP:=www}
 
 PKG_PREFIX=${PKG_PREFIX}
 HOST_NAME=`/bin/hostname`
@@ -16,11 +16,8 @@
 AP_DATA=${PKG_PREFIX}/www/data
 AP_SHARE=${PKG_PREFIX}/share/doc/apache
 
-FPINSTALL=${PKG_PREFIX}/frontpage/version4.0/fp_install.sh
-CHANGESERVER=${PKG_PREFIX}/frontpage/version4.0/change_server.sh
-FPDOCDIR=${AP_SHARE}/manual/frontpage
 IMAGES_DIR=${AP_SHARE}/manual/images
-IMAGES_VTI=${PKG_PREFIX}/www/data/images/_vti_cnf
+IMAGES_VTI=${AP_DATA}/images/_vti_cnf
 
 create_user()
 {
@@ -29,11 +26,19 @@
 		exit 69
 	fi
 
+	oldgid=0
+	if pw show group apache -q > /dev/null ; then
+		echo "*** Group changed from apache to ${PKG_GROUP}"
+		oldgid=`pw show group apache 2> /dev/null | cut -d: -f3`
+	fi
+
 	if ! pw show group ${PKG_GROUP} -q > /dev/null; then
 		gid=80
-		while pw show group -g ${gid} -q > /dev/null; do
-			gid=`expr ${gid} + 1`
-		done
+		if [ ${gid} -ne ${oldgid} ] ; then
+			while pw show group -g ${gid} -q > /dev/null; do
+				gid=`expr ${gid} + 1`
+			done
+		fi
 		if ! pw add group ${PKG_GROUP} -g ${gid}; then
 			e=$?
 			echo "*** Failed to add group \`${PKG_GROUP}'.  Please add it manually."
@@ -50,11 +55,19 @@
 		shell="/nonexistent"
 	fi
 
+	olduid=0
+	if pw show user apache -q > /dev/null ; then
+		echo "*** User name changed from apache to ${PKG_USER}"
+		olduid=`pw show user apache 2> /dev/null | cut -d: -f3`
+	fi
+
 	if ! pw show user ${PKG_USER} -q > /dev/null; then
 		uid=80
-		while pw show user -u ${uid} -q > /dev/null; do
-			uid=`expr ${uid} + 1`
-		done
+		if [ ${uid} -ne ${olduid} ] ; then
+			while pw show user -u ${uid} -q > /dev/null; do
+				uid=`expr ${uid} + 1`
+			done
+		fi
 		if ! pw add user ${PKG_USER} -u ${uid} -g ${gid} \
 				-d "${PKG_PREFIX}/www/data" \
 				-c "The Apache Web Server" \
@@ -83,19 +96,6 @@
     fi
 }
 
-fix_frontpage_scripts ()
-{
-    /bin/cat ${FPINSTALL}-dist | \
-	/usr/bin/sed	-e 's;PREFIX;'${PKG_PREFIX}';' \
-			-e 's;MOD_FPDOCDIR;'${FPDOCDIR}';' \
-	> ${FPINSTALL}
-    /bin/cat ${CHANGESERVER}-dist | \
-	/usr/bin/sed	-e 's;PREFIX;'${PKG_PREFIX}';' \
-	> ${CHANGESERVER}
-    /bin/chmod 555 ${CHANGESERVER} ${FPINSTALL}
-    /usr/sbin/chown bin ${CHANGESERVER} ${FPINSTALL}
-}
-
 fix_httpd_conf ()
 {
     if [ ! -f ${AP_CONF}/httpd.conf ] ; then
@@ -112,37 +112,15 @@
     }
 }
 
-#Add the appropriate comment to the images/_vti_cnf file.
-comment_files ()
-{
-    if [ -d ${IMAGES_VTI} ]; then 
-	if [ -f ${IMAGES_VTI}/apache_pb.gif ] && \
-	   [ ! "`grep description ${IMAGES_VTI}/apache_pb.gif`" ] ; then
-	    /bin/echo "vti_description:SW|Apache Webserver" >> ${IMAGES_VTI}/apache_pb.gif 
-	fi
-	if [ -f ${IMAGES_VTI}/fplogo.gif ] && \
-	   [ ! "`grep description ${IMAGES_VTI}/fplogo.gif`" ] ; then
-	    /bin/echo "vti_description:SW|Created with Microsoft FrontPage 2000" >> ${IMAGES_VTI}/fplogo.gif 
-	fi
-	if [ -f ${IMAGES_VTI}/powerlogo.gif ] && \
-	   [ ! "`grep description ${IMAGES_VTI}/powerlogo.gif`" ] ; then
-	    /bin/echo "vti_description:SW|Powered by FreeBSD" >> ${IMAGES_VTI}/powerlogo.gif
-	fi
-    fi
-}
-
 case $2 in
     PRE-INSTALL)
 	create_user
 	;;
     POST-INSTALL)
-	# If we are not in batch mode then run the FP install script.
+	# If we are not in batch mode
         if [ "${PKG_BATCH}" = "NO" ]; then
 	    create_apache_doc_root
-	    fix_frontpage_scripts
 	    fix_httpd_conf
-	    ${FPINSTALL}
-	    comment_files
 	fi
 	;;
 
Index: pkg-message
===================================================================
RCS file: pkg-message
diff -N pkg-message
--- /dev/null	Sat Oct 27 15:34:20 2001
+++ pkg-message	Fri Oct 26 19:04:00 2001
@@ -0,0 +1,5 @@
+This port only builds a Apache-fp enabled web server.
+
+MS FrontPage Extentions are no longer installed with this
+port.  You will need to install the frontpage5 port/package,
+and optionally one of the frontpage5-[lang] port/packages.
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/pkg-plist,v
retrieving revision 1.18
diff -u -r1.18 pkg-plist
--- pkg-plist	2001/10/20 14:09:30	1.18
+++ pkg-plist	2001/10/26 23:10:05
@@ -92,7 +92,7 @@
 sbin/httpd
 sbin/logresolve
 sbin/rotatelogs
-sbin/suexec
+%%SUEXEC%%sbin/suexec
 share/doc/apache/apache_pb.gif
 @exec if [ ! -h %B/images ]; then (cd %B ; ln -s manual/images images); fi
 @unexec if [ -h %B/images ]; then rm -f %B/images; fi
@@ -125,7 +125,6 @@
 share/doc/apache/index.html.ru.utf8
 share/doc/apache/index.html.se
 share/doc/apache/index.html.zh.Big5
-@unexec rm -rf %B/index.html.en
 share/doc/apache/manual/LICENSE
 share/doc/apache/manual/bind.html.en
 share/doc/apache/manual/bind.html.fr
@@ -152,9 +151,6 @@
 share/doc/apache/manual/env.html.html
 share/doc/apache/manual/env.html.ja.jis
 share/doc/apache/manual/footer.html
-share/doc/apache/manual/frontpage/index.html        
-@exec if [ -h %B/serk ] ; then rm -f %B/serk ; fi ; ln -fs %D/frontpage/%%FP_REV%%/serk %B/serk
-@unexec rm -f %B/serk
 share/doc/apache/manual/handler.html.en
 share/doc/apache/manual/handler.html.html
 share/doc/apache/manual/handler.html.ja.jis
@@ -588,7 +584,6 @@
 @dirrm include/apache/xml
 @dirrm include/apache
 @dirrm libexec/apache
-@dirrm share/doc/apache/manual/frontpage
 @dirrm share/doc/apache/manual/howto
 @dirrm share/doc/apache/manual/images
 @dirrm share/doc/apache/manual/misc
@@ -603,193 +598,3 @@
 @dirrm www/icons
 @dirrm www/proxy
 @dirrm www
-frontpage/%%FP_REV%%/LICENSE.TXT
-frontpage/%%FP_REV%%/change_server.sh-dist
-@unexec rm -f %B/change_server.sh
-@unexec rm -f %B/change_server_results.txt
-frontpage/%%FP_REV%%/fp_install.sh-dist
-@unexec rm -f %B/fp_install.sh
-frontpage/%%FP_REV%%/frontpage.cnf
-@unexec if [ -f %B/%f.orig ] ; then rm -f %B/%f.orig ; fi
-frontpage/%%FP_REV%%/set_default_perms.sh
-frontpage/%%FP_REV%%/readme.htm
-@unexec if [ -f %B/upgrade_results.txt ] ; then rm -f %B/upgrade_results.txt ; fi
-frontpage/%%FP_REV%%/_vti_bin/_vti_adm/admin.exe
-frontpage/%%FP_REV%%/_vti_bin/_vti_aut/author.exe
-frontpage/%%FP_REV%%/_vti_bin/fpcount.exe
-frontpage/%%FP_REV%%/_vti_bin/shtml.exe
-frontpage/%%FP_REV%%/admin/check.htm
-frontpage/%%FP_REV%%/admin/contents.htm
-frontpage/%%FP_REV%%/admin/delsbweb.htm
-frontpage/%%FP_REV%%/admin/direxe.htm
-frontpage/%%FP_REV%%/admin/dirnoexe.htm
-frontpage/%%FP_REV%%/admin/disable.htm
-frontpage/%%FP_REV%%/admin/enable.htm
-frontpage/%%FP_REV%%/admin/footer.htm
-frontpage/%%FP_REV%%/admin/fpadmin.htm
-frontpage/%%FP_REV%%/admin/fpbanner.htm
-frontpage/%%FP_REV%%/admin/fpcreate.gif
-frontpage/%%FP_REV%%/admin/ipaddr.htm
-frontpage/%%FP_REV%%/admin/newsbweb.htm
-frontpage/%%FP_REV%%/admin/newsrvr.htm
-frontpage/%%FP_REV%%/admin/perms.htm
-frontpage/%%FP_REV%%/admin/recalc.htm
-frontpage/%%FP_REV%%/admin/rensbweb.htm
-frontpage/%%FP_REV%%/admin/scripts/fpadmcgi.exe
-frontpage/%%FP_REV%%/admin/topleft.gif
-frontpage/%%FP_REV%%/admin/topright.gif
-frontpage/%%FP_REV%%/admin/uninstal.htm
-frontpage/%%FP_REV%%/apache-fp/_vti_bin/fpexe
-frontpage/%%FP_REV%%/apache-fp/fp-patch-apache_1.3.12
-frontpage/%%FP_REV%%/apache-fp/fpexe.c
-@unexec if [ -f %B/suidkey ] ; then rm -f %B/suidkey* ; fi
-frontpage/%%FP_REV%%/bin/_vti_inf.htm
-frontpage/%%FP_REV%%/bin/fpsrvadm.exe
-frontpage/%%FP_REV%%/bin/postinfo.htm
-frontpage/%%FP_REV%%/exes/_vti_bin/_vti_adm/admin.exe
-frontpage/%%FP_REV%%/exes/_vti_bin/_vti_aut/author.exe
-frontpage/%%FP_REV%%/exes/_vti_bin/fpcount.exe
-frontpage/%%FP_REV%%/exes/_vti_bin/shtml.exe
-frontpage/%%FP_REV%%/nls/cp_1250.nls
-frontpage/%%FP_REV%%/nls/cp_1251.nls
-frontpage/%%FP_REV%%/nls/cp_1252.nls
-frontpage/%%FP_REV%%/nls/cp_1253.nls
-frontpage/%%FP_REV%%/nls/cp_1254.nls
-frontpage/%%FP_REV%%/nls/cp_1255.nls
-frontpage/%%FP_REV%%/nls/cp_1256.nls
-frontpage/%%FP_REV%%/nls/cp_1257.nls
-frontpage/%%FP_REV%%/nls/cp_1258.nls
-frontpage/%%FP_REV%%/nls/cp_28592.nls
-frontpage/%%FP_REV%%/nls/cp_28605.nls
-frontpage/%%FP_REV%%/nls/cp_437.nls
-frontpage/%%FP_REV%%/nls/cp_850.nls
-frontpage/%%FP_REV%%/nls/cp_874.nls
-frontpage/%%FP_REV%%/nls/cp_932.nls
-frontpage/%%FP_REV%%/nls/cp_936.nls
-frontpage/%%FP_REV%%/nls/cp_949.nls
-frontpage/%%FP_REV%%/nls/cp_950.nls
-frontpage/%%FP_REV%%/serk/001.gif
-frontpage/%%FP_REV%%/serk/1ptrans.gif
-frontpage/%%FP_REV%%/serk/SERK.css
-frontpage/%%FP_REV%%/serk/adadv.htm
-frontpage/%%FP_REV%%/serk/adadv_1.htm
-frontpage/%%FP_REV%%/serk/adadv_2.htm
-frontpage/%%FP_REV%%/serk/adadv_3.htm
-frontpage/%%FP_REV%%/serk/adadv_4.htm
-frontpage/%%FP_REV%%/serk/adadv_5.htm
-frontpage/%%FP_REV%%/serk/adadv_6.htm
-frontpage/%%FP_REV%%/serk/adadv_7.htm
-frontpage/%%FP_REV%%/serk/adadv_8.htm
-frontpage/%%FP_REV%%/serk/adadv_9.htm
-frontpage/%%FP_REV%%/serk/adfpre.htm
-frontpage/%%FP_REV%%/serk/adfpre01.gif
-frontpage/%%FP_REV%%/serk/adfpre02.gif
-frontpage/%%FP_REV%%/serk/adfpre_1.htm
-frontpage/%%FP_REV%%/serk/adfpre_2.htm
-frontpage/%%FP_REV%%/serk/adfpre_3.htm
-frontpage/%%FP_REV%%/serk/adfpre_4.htm
-frontpage/%%FP_REV%%/serk/adfpre_5.htm
-frontpage/%%FP_REV%%/serk/adfpre_6.htm
-frontpage/%%FP_REV%%/serk/adfpre_7.htm
-frontpage/%%FP_REV%%/serk/adfpsr.htm
-frontpage/%%FP_REV%%/serk/adfpsr_1.htm
-frontpage/%%FP_REV%%/serk/adfpsr_2.htm
-frontpage/%%FP_REV%%/serk/adfpsr_3.htm
-frontpage/%%FP_REV%%/serk/adhtm.htm
-frontpage/%%FP_REV%%/serk/adhtm_1.htm
-frontpage/%%FP_REV%%/serk/adhtm_2.htm
-frontpage/%%FP_REV%%/serk/admart.gif
-frontpage/%%FP_REV%%/serk/admmc.htm
-frontpage/%%FP_REV%%/serk/admmc_1.htm
-frontpage/%%FP_REV%%/serk/admmc_2.htm
-frontpage/%%FP_REV%%/serk/admmc_3.htm
-frontpage/%%FP_REV%%/serk/admmc_4.htm
-frontpage/%%FP_REV%%/serk/admmc_5.htm
-frontpage/%%FP_REV%%/serk/admmc_6.htm
-frontpage/%%FP_REV%%/serk/adoview.htm
-frontpage/%%FP_REV%%/serk/apndx00.htm
-frontpage/%%FP_REV%%/serk/apndx01.htm
-frontpage/%%FP_REV%%/serk/apndx02.htm
-frontpage/%%FP_REV%%/serk/apndx03.htm
-frontpage/%%FP_REV%%/serk/apndx04.htm
-frontpage/%%FP_REV%%/serk/apndx05.htm
-frontpage/%%FP_REV%%/serk/apndxtoc.htm
-frontpage/%%FP_REV%%/serk/axrpc.htm
-frontpage/%%FP_REV%%/serk/back.gif
-frontpage/%%FP_REV%%/serk/bullet.gif
-frontpage/%%FP_REV%%/serk/cnrat_1.gif
-frontpage/%%FP_REV%%/serk/cnrat_2.gif
-frontpage/%%FP_REV%%/serk/cpyright.htm
-frontpage/%%FP_REV%%/serk/default.htm
-frontpage/%%FP_REV%%/serk/dwnarrow.gif
-frontpage/%%FP_REV%%/serk/home.gif
-frontpage/%%FP_REV%%/serk/incompat.htm
-frontpage/%%FP_REV%%/serk/inintro.htm
-frontpage/%%FP_REV%%/serk/inunix.htm
-frontpage/%%FP_REV%%/serk/inwindow.htm
-frontpage/%%FP_REV%%/serk/msft.gif
-frontpage/%%FP_REV%%/serk/next.gif
-frontpage/%%FP_REV%%/serk/noterule.gif
-frontpage/%%FP_REV%%/serk/ovarchit.htm
-frontpage/%%FP_REV%%/serk/ovart.gif
-frontpage/%%FP_REV%%/serk/ovfeat01.gif
-frontpage/%%FP_REV%%/serk/ovfeat02.gif
-frontpage/%%FP_REV%%/serk/ovfeat03.gif
-frontpage/%%FP_REV%%/serk/ovfeatur.htm
-frontpage/%%FP_REV%%/serk/ovpublis.htm
-frontpage/%%FP_REV%%/serk/ovscenar.htm
-frontpage/%%FP_REV%%/serk/ovwhatar.htm
-frontpage/%%FP_REV%%/serk/ovwhatis.htm
-frontpage/%%FP_REV%%/serk/previous.gif
-frontpage/%%FP_REV%%/serk/r_ydot.gif
-frontpage/%%FP_REV%%/serk/scintro.htm
-frontpage/%%FP_REV%%/serk/scuni.htm
-frontpage/%%FP_REV%%/serk/scuni_1.htm
-frontpage/%%FP_REV%%/serk/scuni_10.htm
-frontpage/%%FP_REV%%/serk/scuni_2.htm
-frontpage/%%FP_REV%%/serk/scuni_3.htm
-frontpage/%%FP_REV%%/serk/scuni_4.htm
-frontpage/%%FP_REV%%/serk/scuni_5.htm
-frontpage/%%FP_REV%%/serk/scuni_6.htm
-frontpage/%%FP_REV%%/serk/scuni_7.htm
-frontpage/%%FP_REV%%/serk/scuni_8.htm
-frontpage/%%FP_REV%%/serk/scuni_9.htm
-frontpage/%%FP_REV%%/serk/scunix01.gif
-frontpage/%%FP_REV%%/serk/scwin.htm
-frontpage/%%FP_REV%%/serk/scwin_1.htm
-frontpage/%%FP_REV%%/serk/scwin_2.htm
-frontpage/%%FP_REV%%/serk/scwin_3.htm
-frontpage/%%FP_REV%%/serk/scwin_4.htm
-frontpage/%%FP_REV%%/serk/scwin_5.htm
-frontpage/%%FP_REV%%/serk/scwin_6.htm
-frontpage/%%FP_REV%%/serk/scwin_7.htm
-frontpage/%%FP_REV%%/serk/scwin_8.htm
-frontpage/%%FP_REV%%/serk/scwin_9.htm
-frontpage/%%FP_REV%%/serk/secart.gif
-frontpage/%%FP_REV%%/serk/serkindx.htm
-frontpage/%%FP_REV%%/serk/serktop.gif
-frontpage/%%FP_REV%%/serk/serktop.htm
-frontpage/%%FP_REV%%/serk/serkxtra.gif
-frontpage/%%FP_REV%%/serk/serkxtra.htm
-frontpage/%%FP_REV%%/serk/setart.gif
-frontpage/%%FP_REV%%/serk/splash.gif
-frontpage/%%FP_REV%%/serk/termofus.gif
-frontpage/%%FP_REV%%/serk/top.gif
-frontpage/%%FP_REV%%/srcs/fp.suid.c
-@dirrm frontpage/%%FP_REV%%/_vti_bin/_vti_adm
-@dirrm frontpage/%%FP_REV%%/_vti_bin/_vti_aut
-@dirrm frontpage/%%FP_REV%%/_vti_bin
-@dirrm frontpage/%%FP_REV%%/admin/scripts
-@dirrm frontpage/%%FP_REV%%/admin
-@dirrm frontpage/%%FP_REV%%/apache-fp/_vti_bin
-@dirrm frontpage/%%FP_REV%%/apache-fp
-@dirrm frontpage/%%FP_REV%%/bin
-@dirrm frontpage/%%FP_REV%%/exes/_vti_bin/_vti_adm
-@dirrm frontpage/%%FP_REV%%/exes/_vti_bin/_vti_aut
-@dirrm frontpage/%%FP_REV%%/exes/_vti_bin
-@dirrm frontpage/%%FP_REV%%/exes
-@dirrm frontpage/%%FP_REV%%/nls
-@dirrm frontpage/%%FP_REV%%/serk
-@dirrm frontpage/%%FP_REV%%/srcs
-@dirrm frontpage/%%FP_REV%%
-@dirrm frontpage
Index: files/apache.sh.tmpl
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/files/apache.sh.tmpl,v
retrieving revision 1.4
diff -u -r1.4 apache.sh.tmpl
--- files/apache.sh.tmpl	2000/03/01 06:25:05	1.4
+++ files/apache.sh.tmpl	2001/10/23 18:51:57
@@ -8,7 +8,7 @@
 new_key() {
 
 	CUR_UMASK=`umask`
-	skdir=PREFIX/frontpage/version4.0/apache-fp
+	skdir=PREFIX/frontpage/versionFP_VER/apache-fp
 	PERL=PERL5
 
 	if [ -x PREFIX/libexec/apache/mod_frontpage.so ]
Index: files/mod_frontpage.c
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/files/mod_frontpage.c,v
retrieving revision 1.3
diff -u -r1.3 mod_frontpage.c
--- files/mod_frontpage.c	2001/02/11 16:43:53	1.3
+++ files/mod_frontpage.c	2001/10/24 01:59:09
@@ -2,7 +2,7 @@
  *
  * Apache FrontPage module.
  *
- * Copyright (c) 1996-1997 Microsoft Corporation -- All Rights Reserved.
+ * Copyright (c) 1996-2001 Microsoft Corporation -- All Rights Reserved.
  *
  * NO WARRANTIES. Microsoft expressly disclaims any warranty for this code and
  * information. This code and information and any related documentation is
@@ -20,10 +20,6 @@
  * of the possibility of such damages. Because some states/jurisdictions do not
  * allow the exclusion or limitation of liability for consequential or
  * incidental damages, the above limitation may not apply to you.
- *
- * $Revision: 5 $
- * $Date: 6/19/98 5:25p $
- *
  */
 
 
@@ -61,15 +57,6 @@
 #include <stdio.h>
 #include <sys/time.h>
 
-#if defined(UWARE7) || UW==700
-#define Vstat stat32
-#define Vlstat lstat32
-#else
-#define Vstat stat
-#define Vlstat lstat
-#endif 
-
-
 #ifndef TRUE
 #define TRUE 1
 #endif
@@ -93,34 +80,54 @@
 static int  gbKeyPipeActive = FALSE;/* Pipe to fpexe stub CGI is active */
 static int  gbEnabled = FALSE;      /* TRUE when SUID scheme is enabled */
 #if !defined(SHARED_MODULE)
-static int  giInitializeCount =0    /* FrontPageInit called previously */
+static int  giInitializeCount = 0;  /* FrontPageInit called previously */
 #endif
 
-static const char* FP         =
-          "/usr/local/frontpage/version4.0";
-static const char* FPKEYDIR   =
-          "/usr/local/frontpage/version4.0/apache-fp";
-static const char* KEYFILEXOR =
-          "/usr/local/frontpage/version4.0/apache-fp/suidkey";
-static const char* KEYFILE    =
-          "/usr/local/frontpage/version4.0/apache-fp/suidkey.%d";
-static const char* FPSTUBDIR  =
-          "/usr/local/frontpage/version4.0/apache-fp/_vti_bin";
-static const char* FPSTUB     =
-          "/usr/local/frontpage/version4.0/apache-fp/_vti_bin/fpexe";
-static const char* SHTML      =
+static const char FP[]         =
+          "/usr/local/frontpage/version5.0";
+static const char FPKEYDIR[]   =
+          "/usr/local/frontpage/version5.0/apache-fp";
+static const char KEYFILEXOR[] =
+          "/usr/local/frontpage/version5.0/apache-fp/suidkey";
+static const char KEYFILE[]    =
+          "/usr/local/frontpage/version5.0/apache-fp/suidkey.%d";
+static const char FPSTUBDIR[]  =
+          "/usr/local/frontpage/version5.0/apache-fp/_vti_bin";
+static const char FPSTUB[]     =
+          "/usr/local/frontpage/version5.0/apache-fp/_vti_bin/fpexe";
+static const char GLOBALADMINDIR[] =
+          "/usr/local/frontpage/version5.0/admin-exes";
+static const char IMAGESDIR[]  =
+          "/exes/_vti_bin/_vti_adm/images" ;
+static const char SHTML[]      =
           "/_vti_bin/shtml.exe";
-static const char* SHTML2     =
+static const char SHTML2[]     =
           "/_vti_bin/shtml.dll";
-static const char* VTI_BIN    =
+static const char VTI_BIN[]    =
           "/_vti_bin";
-static const char* FPCOUNT    =
+static const char FPCOUNT[]    =
           "/_vti_bin/fpcount.exe";
-static const char* AUTHOR     =
+static const char AUTHOR[]     =
           "/_vti_bin/_vti_aut/author.exe" ;
-static const char* ADMIN      =
+static const char ADMIN[]      =
           "/_vti_bin/_vti_adm/admin.exe" ;
+static const char ADMINCGI[]   =
+          "/_vti_bin/_vti_adm/fpadmcgi.exe" ;
+static const char PASSWD[]     =
+          "/passwd.htm" ;
+static const char VTIHELP[]    =
+          "/_vti_bin/_vti_adm/help/" ;
+static const char VTI_ADM[]    =
+          "/_vti_bin/_vti_adm/" ;
+static const char HELPDIR[]    =
+          "/help" ;
+static const char ADMINDIR[]   =
+          "/admin" ;
+
+const int iVTI_LEN = sizeof(VTI_ADM)/sizeof(VTI_ADM[0]) - 1;
+const int iHELP    = sizeof(VTIHELP)/sizeof(VTIHELP[0]) - 1;
 
+
 MODULE_VAR_EXPORT module frontpage_module;
 
 /*
@@ -235,7 +242,7 @@
         return (FALSE);
     }
 
-    if (Vlstat(FPKEYDIR, &fs) == -1          || /* We can't stat the key dir */
+    if (lstat(FPKEYDIR, &fs) == -1          || /* We can't stat the key dir */
         fs.st_uid                           || /* key dir not owned by root */
         (fs.st_mode & (S_IRGRP | S_IROTH))  || /* key dir is readable */
         (fs.st_mode & (S_IWGRP | S_IWOTH))  || /* key dir is writable */
@@ -253,7 +260,7 @@
         return (FALSE);
     }
 
-    if (Vlstat(FPSTUBDIR, &fs) == -1         || /* We can't stat the stub dir */
+    if (lstat(FPSTUBDIR, &fs) == -1         || /* We can't stat the stub dir */
         fs.st_uid                           || /* stub dir not owned by root */
         (fs.st_mode & (S_IWGRP | S_IWOTH))  || /* stub dir is writable */
         (!S_ISDIR(fs.st_mode)))
@@ -267,7 +274,7 @@
         return (FALSE);
     }
 
-    if (Vstat(FPSTUB, &fs) == -1             || /* We can't stat the stub */
+    if (stat(FPSTUB, &fs) == -1             || /* We can't stat the stub */
         fs.st_uid                           || /* stub not owned by root */
         !(fs.st_mode & S_ISUID)             || /* stub is not set-uid */
         (fs.st_mode & S_ISGID)              || /* stub is set-gid */
@@ -446,7 +453,7 @@
     /*
      * See if there is an 'suidkey' file to merge into our key.
      */
-    if (Vstat(KEYFILEXOR, &fs) == -1)
+    if (stat(KEYFILEXOR, &fs) == -1)
     {
         /*
          * It's a security violation if the key file is not present.  User
@@ -470,7 +477,7 @@
              * sure the key file is properly protected (owned by root,
              * permissions r**------).
              */
-            LogFrontPageError(s, "The key file \"%-.1024s\" must be owned by root and have permissions r**------",
+            LogFrontPageError(s, "The key file \"%-.1024s\" must not be accessible except by root and with permissions r**------",
                               KEYFILEXOR, "FrontPageInit()", TRUE);
             return;
         }
@@ -566,43 +573,20 @@
     /*
      * Thanks to Scot Hetzel (hetzels@westbend.net)
      */
-    ap_add_version_component("FrontPage/4.0.4.3");
+    ap_add_version_component("FrontPage/5.0.2.2510");
 }
-
 
-/*
- * Look for a valid FrontPage extensions scenario and fake a scriptalias if
- * appropriate.  If there are any problems, we silently decline.
- */
-static int FrontPageAlias(
+static int FrontPageCheckWebRoot(
     request_rec* r,
     char* szCgi,
-    const char* szFpexe)
+    struct stat *pWebroot)
 {
     int iLen;
-    struct stat webroot;
     struct stat vti_pvt;
-    struct stat stub;
     char szBuf[MAXPATHLEN];
     char chSave;
     char szFormat[MAXPATHLEN * 2];
 
-    /*
-     * Decline if we cannot run the stub, or it is writable.
-     */
-    if (Vstat(FPSTUB, &stub) == -1 || !(stub.st_mode & S_IXOTH) ||
-        stub.st_mode & (S_IWGRP | S_IWOTH))
-    {
-        /*
-         * The stub used to be correctly permissioned; what happened?  User
-         * recovery: set stub to be owned by by root with permissions
-         * r*s*-x*-x.
-         */
-        LogFrontPageError(r->server, "Incorrect permissions on stub \"%-.1024s\", must be owned by root with permissions r*s*-x*-x",
-                          FPSTUB, "FrontPageAlias()", FALSE);
-        return DECLINED;
-    }
-
     chSave = szCgi[1];
     szCgi[1] = '\0';
     ap_translate_name(r);
@@ -622,26 +606,73 @@
      * Decline if webroot and webroot/_vti_pvt don't have the same
      * user and group or uid < LOWEST_VALID_UID or gid < LOWEST_VALID_GID.
      */
-    if (Vstat(szBuf, &vti_pvt) == -1       ||
-        vti_pvt.st_uid < LOWEST_VALID_UID ||
-        vti_pvt.st_gid < LOWEST_VALID_GID ||
-        Vstat(r->filename, &webroot) != 0  ||
-        webroot.st_uid != vti_pvt.st_uid  || 
-        webroot.st_gid != vti_pvt.st_gid)
+    if (stat(szBuf, &vti_pvt)       != 0 ||
+        stat(r->filename, pWebroot) != 0 ||
+        pWebroot->st_uid != vti_pvt.st_uid  || 
+        pWebroot->st_gid != vti_pvt.st_gid)
     {
         /*
          * The webroot and webroot/_vti_pvt don't match.  User recovery: fix
          * the owners and groups of both directories to match, and have both a
          * uid and gid in the allowable range.
          */
-        sprintf(szFormat, "Incorrect permissions on webroot \"%%-.1024s\" and webroot's _vti_pvt directory, the owners and groups must match and have a uid >= %d and gid >= %d", LOWEST_VALID_UID, LOWEST_VALID_GID);
+	sprintf(szFormat, "Incorrect permissions on webroot \"%%-.0124s\" and webroot's _vti_pvt directory, the owners and groups must match and have a uid >= %d and gid >= %d", LOWEST_VALID_UID, LOWEST_VALID_GID);
+	LogFrontPageError(r->server, szFormat,
+                          szBuf, "FrontPageAlias()", FALSE);
+        return DECLINED;
+    }
 
-        LogFrontPageError(r->server, szFormat,
+    if ((!strcmp(r->filename,GLOBALADMINDIR)) ? vti_pvt.st_uid > 0
+        : (vti_pvt.st_uid < LOWEST_VALID_UID ||
+           vti_pvt.st_gid < LOWEST_VALID_GID))
+    {
+        /*
+         * User recovery: fix the owners and groups of both directories to
+         * match, and have both a uid and gid in the allowable range.
+         */
+	sprintf(szFormat, "Incorrect permissions on webroot \"%%-.0124s\" and webroot's _vti_pvt directory, the owners and groups must match and have a uid >= %d and gid >= %d", LOWEST_VALID_UID, LOWEST_VALID_GID);
+	LogFrontPageError(r->server, szFormat,
                           szBuf, "FrontPageAlias()", FALSE);
         return DECLINED;
     }
- 
+    
+    return OK;
+}
+
+
+/*
+ * Look for a valid FrontPage extensions scenario and fake a scriptalias if
+ * appropriate.  If there are any problems, we silently decline.
+ */
+static int FrontPageAlias(
+    request_rec* r,
+    char* szCgi,
+    const char* szFpexe)
+{
+    struct stat webroot;
+    struct stat stub;
+    char szBuf[MAXPATHLEN];
+
     /*
+     * Decline if we cannot run the stub, or it is writable.
+     */
+    if (stat(FPSTUB, &stub) == -1 || !(stub.st_mode & S_IXOTH) ||
+        stub.st_mode & (S_IWGRP | S_IWOTH))
+    {
+        /*
+         * The stub used to be correctly permissioned; what happened?  User
+         * recovery: set stub to be owned by by root with permissions
+         * r*s*-x*-x.
+         */
+        LogFrontPageError(r->server, "Incorrect permissions on stub \"%-.1024s\", must be owned by root with permissions r*s*-x*-x",
+                          FPSTUB, "FrontPageAlias()", FALSE);
+        return DECLINED;
+    }
+
+    if (OK != FrontPageCheckWebRoot(r, szCgi, &webroot))
+        return DECLINED;
+
+    /*
      * If the pipe is active, it was because we previously executed a CGI.
      * That CGI must have finished by now (otherwise we wouldn't be processing
      * this next request), so we can and should close the pipe to avoid a
@@ -705,8 +736,48 @@
     return OK;
 }
 
+static int FrontPageGetLcid(const char* szDir)
+{
+    int iLcid;
+    iLcid = atoi(szDir);
+    if (iLcid < 1 || iLcid > 9999)
+        iLcid = 1033;
+    return iLcid;
+}
 
 /*
+ * Look for a valid FrontPage extensions scenario and fake an alias if
+ * appropriate.  If there are any problems, we silently decline.
+ */
+static int FrontPageStaticAlias(
+    request_rec* r,
+    char* szCgi,
+    const char* szDir,
+    int iLcid)
+{
+    struct stat webroot;
+    char szBuf[8];
+    char* szBase;
+
+    if (OK != FrontPageCheckWebRoot(r, szCgi, &webroot))
+        return DECLINED;
+
+    szBase = strrchr(r->uri, '/');
+    if (!szBase)
+        return DECLINED;
+
+    szBuf[0] = 0;
+    if (iLcid > 0 && iLcid < 10000)
+        sprintf(szBuf, "/%04d", iLcid);
+
+    r->execfilename = ap_pstrcat(r->pool, FP, szDir, szBuf, szBase, NULL);
+    r->filename = ap_pstrcat(r->pool, r->filename, szCgi, NULL);
+
+    return OK;
+}
+
+
+/*
  * This routine looks for shtml.exe, fpcount.exe, author.exe and admin.exe
  * in a URI, and if found we call FrontPageAlias() to check for a valid
  * FrontPage scenario.
@@ -727,7 +798,7 @@
 
     /*
      * Check once for anything with _vti_bin.  This is much faster than
-     * checking all four paths, because anything without this is definitely
+     * checking all our paths, because anything without this is definitely
      * not a FrontPage scenario.
      */
     if (!(szVti = strstr(r->uri, VTI_BIN)))
@@ -740,6 +811,7 @@
      * .../_vti_bin/fpcount.exe...
      * .../_vti_bin/_vti_aut/author.exe...
      * .../_vti_bin/_vti_adm/admin.exe...
+     * .../_vti_bin/_vti_adm/owsadm.exe...
      */
     if (szCgi = strstr(szVti, AUTHOR ))
         return FrontPageAlias(r, szCgi, AUTHOR);
@@ -756,9 +828,25 @@
         return FrontPageAlias(r, szCgi, SHTML);
     if (szCgi = strstr(szVti, ADMIN  ))
         return FrontPageAlias(r, szCgi, ADMIN);
+    if (szCgi = strstr(szVti, ADMINCGI  ))
+        return FrontPageAlias(r, szCgi, ADMINCGI);
     if (szCgi = strstr(szVti, FPCOUNT))
         return FrontPageAlias(r, szCgi, FPCOUNT);
 
+    if (szCgi = strstr(szVti, VTIHELP))
+        return FrontPageStaticAlias(r, szVti, HELPDIR,
+                                    FrontPageGetLcid(szVti + iHELP));
+    if ((szCgi = strrchr(szVti,'/')) && !strcmp(szCgi, PASSWD) &&
+        (iVTI_LEN < strlen(szVti)))
+        return FrontPageStaticAlias(r, szVti, ADMINDIR,
+                                    FrontPageGetLcid(szVti + iVTI_LEN));
+    if ((szCgi = strrchr(szVti,'.')) && !strcmp(szCgi, ".gif"))
+        return FrontPageStaticAlias(r, szVti, IMAGESDIR, 0);
+    if ((szCgi = strrchr(szVti,'.')) && !strcmp(szCgi, ".css") &&
+        (iVTI_LEN < strlen(szVti)))
+        return FrontPageStaticAlias(r, szVti, ADMINDIR,
+                                    FrontPageGetLcid(szVti + iVTI_LEN));
+    
     return DECLINED;    
 }
 
@@ -776,7 +864,7 @@
     NULL,                      /* server config merger */
     NULL,                      /* command table */
     NULL,                      /* [6] list of handlers */
-    FrontPageXlate,            /* [1] filename-to-URI translation */
+    FrontPageXlate,            /* [1] URI-to-filename translation */
     NULL,                      /* [4] check/validate HTTP user_id */
     NULL,                      /* [5] check HTTP user_id is valid *here* */
     NULL,                      /* [3] check access by host address, etc. */
Index: files/patch-fi
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/files/patch-fi,v
retrieving revision 1.5
diff -u -r1.5 patch-fi
--- files/patch-fi	2000/03/01 06:25:10	1.5
+++ files/patch-fi	2001/10/23 01:17:00
@@ -1,6 +1,6 @@
 --- src/main/http_request.c.orig	Tue Jan 11 08:13:41 2000
 +++ src/main/http_request.c	Sun Feb 20 18:44:49 2000
-@@ -175,7 +175,7 @@
+@@ -176,7 +176,7 @@
  {
      char *cp;
      char *path = r->filename;
@@ -9,7 +9,7 @@
      char *last_cp = NULL;
      int rv;
  #ifdef HAVE_DRIVE_LETTERS
-@@ -187,6 +187,9 @@
+@@ -188,6 +188,9 @@
  	return OK;
      }
  
@@ -19,7 +19,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.
-@@ -511,6 +514,7 @@
+@@ -576,6 +579,7 @@
              res = ap_parse_htaccess(&htaccess_conf, r, overrides_here,
                                   ap_pstrdup(r->pool, test_dirname),
                                   sconf->access_name);
@@ -27,7 +27,7 @@
              if (res)
                  return res;
  
-@@ -521,6 +525,7 @@
+@@ -586,6 +590,7 @@
  		r->per_dir_config = per_dir_defaults;
  	    }
          }
Index: files/patch-lang.en
===================================================================
RCS file: /home/ncvs/ports/www/apache13-fp/files/patch-lang.en,v
retrieving revision 1.5
diff -u -r1.5 patch-lang.en
--- files/patch-lang.en	2001/10/20 14:09:31	1.5
+++ files/patch-lang.en	2001/10/23 01:21:22
@@ -6,9 +6,9 @@
  
 -<p>You are free to use the image below on an Apache-powered web
 -server. Thanks for using Apache!</p>
-+<p>The Microsoft FrontPage 2000 Extentions has been installed with this
++<p>The Microsoft FrontPage 2002 Extentions has been installed with this
 +Apache Server.  Read the 
-+<A HREF="manual/frontpage/">Microsoft FrontPage 2000 documentation</A>
++<A HREF="manual/frontpage/">Microsoft FrontPage 2002 documentation</A>
 +carefully.</p>
 +
 +<p>Information of the FreeBSD operating system can be found on the
@@ -23,7 +23,7 @@
 +  <A HREF="http://www.freebsd.org">;
 +    <IMG SRC="/images/powerlogo.gif" ALT="Site driven by FreeBSD - FreeBSD: The Power to Server!"></A>
 +  <A HREF="http://www.microsoft.com/frontpage/default.htm">;
-+    <IMG SRC="/images/fplogo.gif" ALT="Create with Microsoft Frontpage 2000"></A>
++    <IMG SRC="/images/fplogo.gif" ALT="Create with Microsoft Frontpage 2002"></A>
 +</DIV>
  
 -<div align="center"><img src="apache_pb.gif" alt="" /></div>
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200110300507.f9U571d41420>