aboutsummaryrefslogtreecommitdiff
path: root/networking/httpd.c
diff options
context:
space:
mode:
Diffstat (limited to 'networking/httpd.c')
-rw-r--r--networking/httpd.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/networking/httpd.c b/networking/httpd.c
index 251eee01b..60dbba4d6 100644
--- a/networking/httpd.c
+++ b/networking/httpd.c
@@ -1172,7 +1172,6 @@ static int sendCgi(const char *url,
1172 *script = '/'; /* is directory, find next '/' */ 1172 *script = '/'; /* is directory, find next '/' */
1173 } 1173 }
1174 addEnv("PATH", "INFO", script); /* set /PATH_INFO or NULL */ 1174 addEnv("PATH", "INFO", script); /* set /PATH_INFO or NULL */
1175 addEnv("PATH", "", getenv("PATH"));
1176 addEnv("REQUEST", "METHOD", request); 1175 addEnv("REQUEST", "METHOD", request);
1177 if(urlArgs) { 1176 if(urlArgs) {
1178 char *uri = alloca(strlen(purl) + 2 + strlen(urlArgs)); 1177 char *uri = alloca(strlen(purl) + 2 + strlen(urlArgs));
@@ -1996,6 +1995,19 @@ int httpd_main(int argc, char *argv[])
1996# endif 1995# endif
1997#endif 1996#endif
1998 1997
1998#ifdef CONFIG_FEATURE_HTTPD_CGI
1999 {
2000 char *p = getenv("PATH");
2001
2002 if(p)
2003 p = bb_xstrdup(p);
2004 clearenv();
2005 if(p) {
2006 setenv("PATH", p, 0);
2007 }
2008 }
2009#endif
2010
1999#ifdef CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP 2011#ifdef CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
2000 sighup_handler(0); 2012 sighup_handler(0);
2001#else 2013#else