diff options
author | lukem <lukem> | 2004-04-29 12:12:31 +0000 |
---|---|---|
committer | lukem <lukem> | 2004-04-29 12:12:31 +0000 |
commit | 0f0de8e92953a3ee4e15f49034059eb8da3caa42 (patch) | |
tree | 1ded34861a9c55a2081b680934c9bc933b5bda9c /www/bozohttpd/patches | |
parent | 7a2394bcbae8a554bc38473854d55ee4ac800a4e (diff) | |
download | pkgsrc-0f0de8e92953a3ee4e15f49034059eb8da3caa42.tar.gz |
Add SCRIPT_FILENAME to the environment variables provided to CGIs,
as a copy of SCRIPT_NAME with the leading `/' removed.
Note that SCRIPT_FILENAME is _not_ a CGI/1.1 environment variable per
http://cgi-spec.golux.com/
If SCRIPT_FILENAME is not set set PHP 4.3.6 as a CGI fails with
No input file specified.
Apache sets this variable; it appears that many other CGI/1.1 compliant
web servers do not and thus PHP 4.3.6 as a CGI doesn't function with them.
"oh joy."
Diffstat (limited to 'www/bozohttpd/patches')
-rw-r--r-- | www/bozohttpd/patches/patch-aa | 38 |
1 files changed, 23 insertions, 15 deletions
diff --git a/www/bozohttpd/patches/patch-aa b/www/bozohttpd/patches/patch-aa index 249e9510681..fe5758f4c7c 100644 --- a/www/bozohttpd/patches/patch-aa +++ b/www/bozohttpd/patches/patch-aa @@ -1,7 +1,7 @@ -$NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ +$NetBSD: patch-aa,v 1.14 2004/04/29 12:12:31 lukem Exp $ ---- bozohttpd.c.orig 2004-02-18 14:11:57.000000000 +0100 -+++ bozohttpd.c 2004-03-28 22:46:29.000000000 +0200 +--- bozohttpd.c.orig 2004-02-19 00:11:57.000000000 +1100 ++++ bozohttpd.c @@ -136,6 +136,9 @@ #ifndef REDIRECT_FILE #define REDIRECT_FILE ".bzredirect" @@ -12,7 +12,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ /* * And so it begins .. -@@ -329,7 +332,7 @@ +@@ -329,7 +332,7 @@ static void process_request(http_req *); static void check_special_files(http_req *, const char *); static int check_direct_access(http_req *request); static char *transform_request(http_req *, int *); @@ -21,7 +21,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ static void print_header(http_req *, struct stat *, const char *, const char *); -@@ -1186,7 +1189,7 @@ +@@ -1186,7 +1189,7 @@ process_request(request) if (fstat(fd, &sb) < 0) http_error(500, request, "can't fstat"); if (S_ISDIR(sb.st_mode)) @@ -30,7 +30,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ /* NOTREACHED */ /* XXX RFC1945 10.9 If-Modified-Since (http code 304) */ -@@ -1438,6 +1441,9 @@ +@@ -1438,6 +1441,9 @@ check_special_files(http_req *request, c if (strcmp(name, REDIRECT_FILE) == 0) http_error(403, request, "no permission to open redirect file"); @@ -40,7 +40,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ #ifdef DO_HTPASSWD if (strcmp(name, AUTH_FILE) == 0) http_error(403, request, -@@ -1454,8 +1460,8 @@ +@@ -1454,8 +1460,8 @@ check_bzredirect(http_req *request) { struct stat sb; char dir[MAXPATHLEN], redir[MAXPATHLEN], redirpath[MAXPATHLEN]; @@ -51,7 +51,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ /* -@@ -1477,19 +1483,35 @@ +@@ -1477,19 +1483,35 @@ check_bzredirect(http_req *request) } snprintf(redir, sizeof(redir), "%s/%s", dir, REDIRECT_FILE); @@ -93,7 +93,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ } /* -@@ -1602,7 +1624,7 @@ +@@ -1602,7 +1624,7 @@ transform_request(request, isindex) if (asprintf(&slashindexhtml, "/%s", index_html) < 0) error(1, "asprintf"); debug((DEBUG_FAT, "rflag: redirecting %s to %s", url, slashindexhtml)); @@ -102,7 +102,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ /* NOTREACHED */ } } -@@ -1619,7 +1641,7 @@ +@@ -1619,7 +1641,7 @@ transform_request(request, isindex) if (url[2] == '\0') http_error(404, request, "missing username"); if (strchr(url + 2, '/') == NULL) @@ -111,7 +111,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ /* NOTREACHED */ debug((DEBUG_FAT, "calling transform_user")); return (transform_user(request, isindex)); -@@ -1733,9 +1755,10 @@ +@@ -1733,9 +1755,10 @@ transform_user(request, isindex) * do automatic redirection */ static void @@ -123,7 +123,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ { char *urlbuf; char portbuf[20]; -@@ -1755,16 +1778,24 @@ +@@ -1755,16 +1778,24 @@ handle_redirect(request, url) (void)bozoprintf("%s 301 Document Moved\r\n", request->hr_proto); if (request->hr_proto != http_09) print_header(request, NULL, "text/html", NULL); @@ -153,7 +153,15 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ (void)bozoprintf("</body></html>\n"); head: fflush(stdout); -@@ -1977,8 +2008,8 @@ +@@ -1951,6 +1982,7 @@ process_cgi(request) + spsetenv("SERVER_PROTOCOL", request->hr_proto, curenvp++); + spsetenv("REQUEST_METHOD", request->hr_methodstr, curenvp++); + spsetenv("SCRIPT_NAME", url, curenvp++); ++ spsetenv("SCRIPT_FILENAME", url+1, curenvp++); + spsetenv("SERVER_SOFTWARE", server_software, curenvp++); + spsetenv("REQUEST_URI", request->hr_url, curenvp++); + spsetenv("DATE_GMT", date, curenvp++); +@@ -1977,8 +2009,8 @@ process_cgi(request) /* may as well wait as long as possible */ print_cgi_header: @@ -163,7 +171,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ debug((DEBUG_OBESE, "process_cgi: writing HTTP header ..")); if (request->hr_proto != http_09) print_header(NULL, NULL, NULL, NULL); -@@ -1988,8 +2019,6 @@ +@@ -1988,8 +2020,6 @@ print_cgi_header: } else debug((DEBUG_OBESE, "process_cgi: not-writing HTTP header ..")); @@ -172,7 +180,7 @@ $NetBSD: patch-aa,v 1.13 2004/03/28 20:52:00 martin Exp $ debug((DEBUG_FAT, "process_cgi: going exec %s, %s %s %s", path, argv[0], strornull(argv[1]), strornull(argv[2]))); -@@ -2291,6 +2320,7 @@ +@@ -2291,6 +2321,7 @@ static struct content_map content_map[] { ".ppt", "application/powerpoint", "", "", NULL }, { ".rtf", "application/rtf", "", "", NULL }, { ".bcpio", "application/x-bcpio", "", "", NULL }, |