From fe538ba5d68391562b23d9d0902b4219b6329cad Mon Sep 17 00:00:00 2001 From: Glenn L McGrath Date: Wed, 10 Sep 2003 23:35:45 +0000 Subject: Vodz, last_patch_104 --- networking/httpd.c | 14 +++++++++++++- sysklogd/syslogd.c | 9 +++++---- 2 files changed, 18 insertions(+), 5 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, *script = '/'; /* is directory, find next '/' */ } addEnv("PATH", "INFO", script); /* set /PATH_INFO or NULL */ - addEnv("PATH", "", getenv("PATH")); addEnv("REQUEST", "METHOD", request); if(urlArgs) { char *uri = alloca(strlen(purl) + 2 + strlen(urlArgs)); @@ -1996,6 +1995,19 @@ int httpd_main(int argc, char *argv[]) # endif #endif +#ifdef CONFIG_FEATURE_HTTPD_CGI + { + char *p = getenv("PATH"); + + if(p) + p = bb_xstrdup(p); + clearenv(); + if(p) { + setenv("PATH", p, 0); + } + } +#endif + #ifdef CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP sighup_handler(0); #else diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c index ca6aee307..a7712d445 100644 --- a/sysklogd/syslogd.c +++ b/sysklogd/syslogd.c @@ -56,7 +56,7 @@ /* Path to the unix socket */ static char lfile[MAXPATHLEN]; -static char *logFilePath = __LOG_FILE; +static const char *logFilePath = __LOG_FILE; /* interval between marks in seconds */ static int MarkInterval = 20 * 60; @@ -588,7 +588,7 @@ extern int syslogd_main(int argc, char **argv) doFork = FALSE; break; case 'O': - logFilePath = bb_xstrdup(optarg); + logFilePath = optarg; break; #ifdef CONFIG_FEATURE_REMOTE_LOG case 'R': @@ -623,12 +623,13 @@ extern int syslogd_main(int argc, char **argv) /* Store away localhost's name before the fork */ gethostname(LocalHostName, sizeof(LocalHostName)); if ((p = strchr(LocalHostName, '.'))) { - *p++ = '\0'; + *p = '\0'; } umask(0); - if ((doFork == TRUE) && (daemon(0, 1) < 0)) { + if (doFork == TRUE) { + if(daemon(0, 1) < 0) bb_perror_msg_and_die("daemon"); #if defined(__uClinux__) vfork_daemon_rexec(argc, argv, "-n"); -- cgit v1.2.3