From 97841d4b113f8de5d69212f9380100ccac99ab96 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Tue, 4 Nov 2003 10:09:50 +0000 Subject: [PATCH] - new Changed files: apache-mod_frontpage-mirfak.patch -> 1.1 apache-mod_frontpage.pl -> 1.1 apache1-mod_frontpage-mirfak.patch -> 1.1 apache1-mod_frontpage.pl -> 1.1 --- apache-mod_frontpage-mirfak.patch | 119 +++++++++++++++++++++++++++++ apache-mod_frontpage.pl | 40 ++++++++++ apache1-mod_frontpage-mirfak.patch | 119 +++++++++++++++++++++++++++++ apache1-mod_frontpage.pl | 40 ++++++++++ 4 files changed, 318 insertions(+) create mode 100644 apache-mod_frontpage-mirfak.patch create mode 100644 apache-mod_frontpage.pl create mode 100644 apache1-mod_frontpage-mirfak.patch create mode 100644 apache1-mod_frontpage.pl diff --git a/apache-mod_frontpage-mirfak.patch b/apache-mod_frontpage-mirfak.patch new file mode 100644 index 0000000..439a09d --- /dev/null +++ b/apache-mod_frontpage-mirfak.patch @@ -0,0 +1,119 @@ +diff -urp mod_frontpage_mirfak-1.6.2.orig/fpstatic.c mod_frontpage_mirfak-1.6.2/fpstatic.c +--- mod_frontpage_mirfak-1.6.2.orig/fpstatic.c 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/fpstatic.c 2002-11-08 02:00:49.000000000 -0400 +@@ -434,16 +434,42 @@ int translate (const char * uri) { + pos = strrchr((char *)uri, '/'); + snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%s%s%s", + FPBASE, _EXES, _VTI_ADM, _IMAGES, pos); ++ /* ++ * Check to see if the user is changing the password, ++ * which has a URL like _vti_bin/_vti_aut/passwd.htm. ++ * It's different from other ".htm" files because it ++ * goes through _VTI_AUT instead of _VTI_ADM and it ++ * may not have the Lcid in the URL. If it's missing ++ * the Lcid, hard-code it to 1033 like the rtr patches. ++ */ ++ } else if (((pos = strstr(uri, _FPPASSWD)) != NULL)) { ++ pos = strstr(uri, _VTI_AUT); ++ pos = pos + 19; ++ Lcid = (int)strtol(pos, &pos, 10); ++ if (Lcid == 0) { ++ Lcid = 1033; ++ } ++ pos = strrchr((char *)uri, '/'); ++ snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%c%04d%s", ++ FPBASE, _ADMIN, '/', Lcid, pos); ++ + /* + * If we still have .htm or .css, we end up + * with the admin dir. If we match, we calculate + * the Lcid from the string. + */ +- } else if (((pos = strstr(uri, ".htm")) != NULL) +- || ((pos = strstr(uri, ".css")) != NULL)) { ++ } else if (((pos = strstr(uri, ".css")) != NULL)) { ++ if (((pos = strstr(uri, _VTI_ADM)) != NULL)) { + pos = strstr(uri, _VTI_ADM); ++ } else { ++ pos = strstr(uri, _VTI_AUT); ++ } + pos = pos + 19; + Lcid = (int)strtol(pos, &pos, 10); ++ if (Lcid == 0) { ++ Lcid = 1033; ++ } ++ pos = strrchr((char *)uri, '/'); + snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%c%04d%s", + FPBASE, _ADMIN, '/', Lcid, pos); + } +diff -urp mod_frontpage_mirfak-1.6.2.orig/Makefile.in mod_frontpage_mirfak-1.6.2/Makefile.in +--- mod_frontpage_mirfak-1.6.2.orig/Makefile.in 2002-03-12 17:07:06.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/Makefile.in 2002-11-08 01:46:36.000000000 -0400 +@@ -37,7 +37,7 @@ all: mod_frontpage.so fpexec fpstatic + + # compile the DSO file + mod_frontpage.so: mod_frontpage.c +- $(APXS) -Wall -c $(DEF) $(INC) $(LIB) mod_frontpage.c ++ $(APXS) -Wall -c $(DEF) $(DEF2) $(INC) $(LIB) mod_frontpage.c + + fpexec: fpexec.c + $(cc) $(CFLAGS) $(DEF2) $(INC) $(LIB) -o fpexec fpexec.c +diff -urp mod_frontpage_mirfak-1.6.2.orig/Makefile.PL mod_frontpage_mirfak-1.6.2/Makefile.PL +--- mod_frontpage_mirfak-1.6.2.orig/Makefile.PL 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/Makefile.PL 2002-11-08 02:01:41.000000000 -0400 +@@ -11,9 +11,11 @@ + + $flavor=`uname`; + if (-e "/etc/mandrake-release") {$flavor="Mandrake";} ++if (-e "/etc/debian_version") {$flavor="Debian";} + + if ($flavor eq "FreeBSD") { $thechoice="/usr/local/sbin/httpd"; + } elsif ($flavor eq "Mandrake") { $thechoice="/usr/sbin/httpd"; ++} elsif ($flavor eq "Debian") { $thechoice="/usr/sbin/apache"; + } else { + print "Enter the path of your httpd binary.\n"; + print "It should be something like /usr/local/apache/bin).\n"; +@@ -43,7 +45,10 @@ if (/Server version:/) { print " YES!\n" + } else { die "\n\nSorry, can't find Apache version!\n"; } + + $httpd=$thechoice; +-$thechoice=~s|/httpd||; ++ ++if ($flavor eq "Debian") { $thechoice=~s|sbin/apache|bin/|; ++} else { ++$thechoice=~s|/httpd||; } + + print "sbindir is $thechoice, trying to find apxs..."; + +@@ -74,10 +79,10 @@ $tmpfile="/tmp/frontpage.$$"; + open(FILE,"$tmpfile") or die "Can't find $tmpfile!\n"; + print "Reading httpd.conf...\n"; + while() { +- if (!$user && /^\s*User (\w*)/i) { ++ if (!$user && /^\s*User ([\w-]*)/i) { + $user=$1; + } +- if (!$group && /^\s*Group (\w*)/i) { ++ if (!$group && /^\s*Group ([\w-]*)/i) { + $group=$1; + } + if (!$userdir && /^\s*UserDir (\w*)/i) { +@@ -123,6 +128,7 @@ if (/^(\d*)(\s*)(\d*)/) { + + if ($flavor eq "FreeBSD") { $defaultid=80; + } elsif ($flavor eq "Mandrake") { $defaultid=48; ++} elsif ($flavor eq "Debian") { $defaultid=33; + } else { $defaultid=99; } + + if ($uid < $defaultid) { +diff -urp mod_frontpage_mirfak-1.6.2.orig/path.h mod_frontpage_mirfak-1.6.2/path.h +--- mod_frontpage_mirfak-1.6.2.orig/path.h 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/path.h 2002-11-08 01:52:01.000000000 -0400 +@@ -67,6 +67,7 @@ + #define _HELP "/help" + #define _EXES "/exes" + #define _ADMIN "/admin" ++#define _FPPASSWD "/passwd.htm" + + #define VTIHELP _VTI_BIN "/_vti_adm/help" + #define SHTMLDLL _VTI_BIN "/shtml.dll" diff --git a/apache-mod_frontpage.pl b/apache-mod_frontpage.pl new file mode 100644 index 0000000..da57d57 --- /dev/null +++ b/apache-mod_frontpage.pl @@ -0,0 +1,40 @@ +#!/usr/bin/perl + +$sbindir="/usr/sbin"; +$apxs="$sbindir/apxs"; +$confdir=`$apxs -q SYSCONFDIR`; +$confdir =~ s|\n||; +$cc=`$apxs -q CC`; +$cc =~ s|\n||; +$cflags=`$apxs -q CFLAGS`; +$cflags =~ s|\n||; +$includedir=`$apxs -q INCLUDEDIR`; +$includedir =~ s|\n||; +$libexecdir=`$apxs -q LIBEXECDIR`; +$libexecdir =~ s|\n||; + +### Create Makefile +$install=`which install`; +chop $install; +open(MTMP,"Makefile.in") or die "Can't find Makefile.tmpl\n"; +open(MAKF,"> Makefile") or die "Can't create Makefile\n"; +print "Creating Makefile\n"; +while() { +$_=~ s|\$\(apxs\)|$apxs|; +$_=~ s|\$\(apachectl\)|/usr/sbin/apachectl|; +$_=~ s|\$\(cc\)|$cc|; +$_=~ s|\$\(includedir\)|$includedir|; +$_=~ s|\$\(cflags\)|$cflags|; +$_=~ s|\$\(sbindir\)|/usr/sbin|; +$_=~ s|\$\(install\)|$install|; +$_=~ s|\$\(fpexec_uidcaller\)|http|; +$_=~ s|\$\(fpexec_gidcaller\)|http|; +$_=~ s|\$\(fpexec_uidmin\)|1000|; +$_=~ s|\$\(fpexec_gidmin\)|1000|; +$_=~ s|\$\(fpexec_logexec\)|/var/log/httpd/fpexec_log|; +$_=~ s|\$\(fpexec_userdir\)|public_html|; +$_=~ s|\$\(fpexec_docroot\)|/home/services/httpd/html|; +$_=~ s|"\$\(fpexec_bin\)|\\\\\"$sbindir\/fpexec\\\\|; +$_=~ s|"\$\(fpstatic_bin\)|\\\\\"$sbindir\/fpstatic\\\\|; +print MAKF $_; +} diff --git a/apache1-mod_frontpage-mirfak.patch b/apache1-mod_frontpage-mirfak.patch new file mode 100644 index 0000000..439a09d --- /dev/null +++ b/apache1-mod_frontpage-mirfak.patch @@ -0,0 +1,119 @@ +diff -urp mod_frontpage_mirfak-1.6.2.orig/fpstatic.c mod_frontpage_mirfak-1.6.2/fpstatic.c +--- mod_frontpage_mirfak-1.6.2.orig/fpstatic.c 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/fpstatic.c 2002-11-08 02:00:49.000000000 -0400 +@@ -434,16 +434,42 @@ int translate (const char * uri) { + pos = strrchr((char *)uri, '/'); + snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%s%s%s", + FPBASE, _EXES, _VTI_ADM, _IMAGES, pos); ++ /* ++ * Check to see if the user is changing the password, ++ * which has a URL like _vti_bin/_vti_aut/passwd.htm. ++ * It's different from other ".htm" files because it ++ * goes through _VTI_AUT instead of _VTI_ADM and it ++ * may not have the Lcid in the URL. If it's missing ++ * the Lcid, hard-code it to 1033 like the rtr patches. ++ */ ++ } else if (((pos = strstr(uri, _FPPASSWD)) != NULL)) { ++ pos = strstr(uri, _VTI_AUT); ++ pos = pos + 19; ++ Lcid = (int)strtol(pos, &pos, 10); ++ if (Lcid == 0) { ++ Lcid = 1033; ++ } ++ pos = strrchr((char *)uri, '/'); ++ snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%c%04d%s", ++ FPBASE, _ADMIN, '/', Lcid, pos); ++ + /* + * If we still have .htm or .css, we end up + * with the admin dir. If we match, we calculate + * the Lcid from the string. + */ +- } else if (((pos = strstr(uri, ".htm")) != NULL) +- || ((pos = strstr(uri, ".css")) != NULL)) { ++ } else if (((pos = strstr(uri, ".css")) != NULL)) { ++ if (((pos = strstr(uri, _VTI_ADM)) != NULL)) { + pos = strstr(uri, _VTI_ADM); ++ } else { ++ pos = strstr(uri, _VTI_AUT); ++ } + pos = pos + 19; + Lcid = (int)strtol(pos, &pos, 10); ++ if (Lcid == 0) { ++ Lcid = 1033; ++ } ++ pos = strrchr((char *)uri, '/'); + snprintf((char *)fnbuf, sizeof(fnbuf), "%s%s%c%04d%s", + FPBASE, _ADMIN, '/', Lcid, pos); + } +diff -urp mod_frontpage_mirfak-1.6.2.orig/Makefile.in mod_frontpage_mirfak-1.6.2/Makefile.in +--- mod_frontpage_mirfak-1.6.2.orig/Makefile.in 2002-03-12 17:07:06.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/Makefile.in 2002-11-08 01:46:36.000000000 -0400 +@@ -37,7 +37,7 @@ all: mod_frontpage.so fpexec fpstatic + + # compile the DSO file + mod_frontpage.so: mod_frontpage.c +- $(APXS) -Wall -c $(DEF) $(INC) $(LIB) mod_frontpage.c ++ $(APXS) -Wall -c $(DEF) $(DEF2) $(INC) $(LIB) mod_frontpage.c + + fpexec: fpexec.c + $(cc) $(CFLAGS) $(DEF2) $(INC) $(LIB) -o fpexec fpexec.c +diff -urp mod_frontpage_mirfak-1.6.2.orig/Makefile.PL mod_frontpage_mirfak-1.6.2/Makefile.PL +--- mod_frontpage_mirfak-1.6.2.orig/Makefile.PL 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/Makefile.PL 2002-11-08 02:01:41.000000000 -0400 +@@ -11,9 +11,11 @@ + + $flavor=`uname`; + if (-e "/etc/mandrake-release") {$flavor="Mandrake";} ++if (-e "/etc/debian_version") {$flavor="Debian";} + + if ($flavor eq "FreeBSD") { $thechoice="/usr/local/sbin/httpd"; + } elsif ($flavor eq "Mandrake") { $thechoice="/usr/sbin/httpd"; ++} elsif ($flavor eq "Debian") { $thechoice="/usr/sbin/apache"; + } else { + print "Enter the path of your httpd binary.\n"; + print "It should be something like /usr/local/apache/bin).\n"; +@@ -43,7 +45,10 @@ if (/Server version:/) { print " YES!\n" + } else { die "\n\nSorry, can't find Apache version!\n"; } + + $httpd=$thechoice; +-$thechoice=~s|/httpd||; ++ ++if ($flavor eq "Debian") { $thechoice=~s|sbin/apache|bin/|; ++} else { ++$thechoice=~s|/httpd||; } + + print "sbindir is $thechoice, trying to find apxs..."; + +@@ -74,10 +79,10 @@ $tmpfile="/tmp/frontpage.$$"; + open(FILE,"$tmpfile") or die "Can't find $tmpfile!\n"; + print "Reading httpd.conf...\n"; + while() { +- if (!$user && /^\s*User (\w*)/i) { ++ if (!$user && /^\s*User ([\w-]*)/i) { + $user=$1; + } +- if (!$group && /^\s*Group (\w*)/i) { ++ if (!$group && /^\s*Group ([\w-]*)/i) { + $group=$1; + } + if (!$userdir && /^\s*UserDir (\w*)/i) { +@@ -123,6 +128,7 @@ if (/^(\d*)(\s*)(\d*)/) { + + if ($flavor eq "FreeBSD") { $defaultid=80; + } elsif ($flavor eq "Mandrake") { $defaultid=48; ++} elsif ($flavor eq "Debian") { $defaultid=33; + } else { $defaultid=99; } + + if ($uid < $defaultid) { +diff -urp mod_frontpage_mirfak-1.6.2.orig/path.h mod_frontpage_mirfak-1.6.2/path.h +--- mod_frontpage_mirfak-1.6.2.orig/path.h 2002-03-12 17:07:07.000000000 -0400 ++++ mod_frontpage_mirfak-1.6.2/path.h 2002-11-08 01:52:01.000000000 -0400 +@@ -67,6 +67,7 @@ + #define _HELP "/help" + #define _EXES "/exes" + #define _ADMIN "/admin" ++#define _FPPASSWD "/passwd.htm" + + #define VTIHELP _VTI_BIN "/_vti_adm/help" + #define SHTMLDLL _VTI_BIN "/shtml.dll" diff --git a/apache1-mod_frontpage.pl b/apache1-mod_frontpage.pl new file mode 100644 index 0000000..da57d57 --- /dev/null +++ b/apache1-mod_frontpage.pl @@ -0,0 +1,40 @@ +#!/usr/bin/perl + +$sbindir="/usr/sbin"; +$apxs="$sbindir/apxs"; +$confdir=`$apxs -q SYSCONFDIR`; +$confdir =~ s|\n||; +$cc=`$apxs -q CC`; +$cc =~ s|\n||; +$cflags=`$apxs -q CFLAGS`; +$cflags =~ s|\n||; +$includedir=`$apxs -q INCLUDEDIR`; +$includedir =~ s|\n||; +$libexecdir=`$apxs -q LIBEXECDIR`; +$libexecdir =~ s|\n||; + +### Create Makefile +$install=`which install`; +chop $install; +open(MTMP,"Makefile.in") or die "Can't find Makefile.tmpl\n"; +open(MAKF,"> Makefile") or die "Can't create Makefile\n"; +print "Creating Makefile\n"; +while() { +$_=~ s|\$\(apxs\)|$apxs|; +$_=~ s|\$\(apachectl\)|/usr/sbin/apachectl|; +$_=~ s|\$\(cc\)|$cc|; +$_=~ s|\$\(includedir\)|$includedir|; +$_=~ s|\$\(cflags\)|$cflags|; +$_=~ s|\$\(sbindir\)|/usr/sbin|; +$_=~ s|\$\(install\)|$install|; +$_=~ s|\$\(fpexec_uidcaller\)|http|; +$_=~ s|\$\(fpexec_gidcaller\)|http|; +$_=~ s|\$\(fpexec_uidmin\)|1000|; +$_=~ s|\$\(fpexec_gidmin\)|1000|; +$_=~ s|\$\(fpexec_logexec\)|/var/log/httpd/fpexec_log|; +$_=~ s|\$\(fpexec_userdir\)|public_html|; +$_=~ s|\$\(fpexec_docroot\)|/home/services/httpd/html|; +$_=~ s|"\$\(fpexec_bin\)|\\\\\"$sbindir\/fpexec\\\\|; +$_=~ s|"\$\(fpstatic_bin\)|\\\\\"$sbindir\/fpstatic\\\\|; +print MAKF $_; +} -- 2.43.0