summaryrefslogtreecommitdiff
path: root/network/thttpd/patches/thttpd-2.25b-fix-illegal-path-info.patch
blob: d1688f1446810a1d6bc95fc580c39d72b7a574de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
diff -Naur thttpd-2.25b.orig/libhttpd.c thttpd-2.25b/libhttpd.c
--- thttpd-2.25b.orig/libhttpd.c	2007-10-14 10:09:55.000000000 +0000
+++ thttpd-2.25b/libhttpd.c	2007-10-14 10:09:11.000000000 +0000
@@ -2322,8 +2320,11 @@
 	{
 	int i;
 	i = strlen( hc->origfilename ) - strlen( hc->pathinfo );
-	if ( i > 0 && strcmp( &hc->origfilename[i], hc->pathinfo ) == 0 )
-	    hc->origfilename[i - 1] = '\0';
+	if ( strcmp( &hc->origfilename[i], hc->pathinfo ) == 0 )
+	    {
+	    if ( i == 0 ) hc->origfilename[0] = '\0';
+	    else hc->origfilename[i - 1] = '\0';
+	    }
 	}
 
     /* If the expanded filename is an absolute path, check that it's still