From 80281fefc032c3317d5709489aadb733f6fb0e30 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Wed, 7 Mar 2007 22:16:38 +0000 Subject: [PATCH] httpd: make httpd usable for NOMMU CPUs --- networking/httpd.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/networking/httpd.c b/networking/httpd.c index ee408eb..72b03de 100644 --- a/networking/httpd.c +++ b/networking/httpd.c @@ -977,7 +977,20 @@ static int sendCgi(const char *url, if (pipe(toCgi) != 0) return 0; +/* + * Note: We can use vfork() here in the no-mmu case, although + * the child modifies the parent's variables, due to: + * 1) The parent does not use the child-modified variables. + * 2) The allocated memory (in the child) is freed when the process + * exits. This happens instantly after the child finishes, + * since httpd is run from inetd (and it can't run standalone + * in uClinux). + */ +#ifdef BB_NOMMU + pid = vfork(); +#else pid = fork(); +#endif if (pid < 0) return 0; -- 2.7.4