]> git.pld-linux.org Git - packages/apache1-mod_frontpage.git/blobdiff - apache-mod_frontpage-mirfak.patch
- new
[packages/apache1-mod_frontpage.git] / apache-mod_frontpage-mirfak.patch
diff --git a/apache-mod_frontpage-mirfak.patch b/apache-mod_frontpage-mirfak.patch
new file mode 100644 (file)
index 0000000..439a09d
--- /dev/null
@@ -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(<FILE>) {
+-    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"
This page took 0.080063 seconds and 4 git commands to generate.