svn commit: trunk/busybox/libbb
landley at busybox.net
landley at busybox.net
Fri Jun 16 16:35:54 UTC 2006
Author: landley
Date: 2006-06-16 09:35:53 -0700 (Fri, 16 Jun 2006)
New Revision: 15408
Log:
Revert svn 15333. If you vfork, you must either exec or exit. (The parent is
blocked until you do so.)
Modified:
trunk/busybox/libbb/vfork_daemon_rexec.c
Changeset:
Modified: trunk/busybox/libbb/vfork_daemon_rexec.c
===================================================================
--- trunk/busybox/libbb/vfork_daemon_rexec.c 2006-06-16 15:08:59 UTC (rev 15407)
+++ trunk/busybox/libbb/vfork_daemon_rexec.c 2006-06-16 16:35:53 UTC (rev 15408)
@@ -23,9 +23,12 @@
#ifdef BB_NOMMU
-static void vfork_daemon_common(int nochdir, int noclose)
+void vfork_daemon_rexec(int nochdir, int noclose,
+ int argc, char **argv, char *foreground_opt)
{
int fd;
+ char **vfork_args;
+ int a = 0;
setsid();
@@ -38,25 +41,8 @@
dup2(fd, STDERR_FILENO);
if (fd > 2)
close(fd);
- }
-}
+ }
-void vfork_daemon(int nochdir, int noclose)
-{
- vfork_daemon_common(nochdir, noclose);
-
- if (vfork())
- exit(0);
-}
-
-void vfork_daemon_rexec(int nochdir, int noclose,
- int argc, char **argv, char *foreground_opt)
-{
- char **vfork_args;
- int a = 0;
-
- vfork_daemon_common(nochdir, noclose);
-
vfork_args = xcalloc(sizeof(char *), argc + 3);
vfork_args[a++] = "/bin/busybox";
while(*argv) {
More information about the busybox-cvs
mailing list