aboutsummaryrefslogtreecommitdiff
path: root/miscutils/watchdog.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-03-24 12:11:17 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-03-24 12:11:17 +0000
commit9067f13be067f39f6c8586926b190b7dee0def3d (patch)
treeff0a10f5f81fa0e1e719691c147309a9cc9bef46 /miscutils/watchdog.c
parent1b6fa4c57ced2ae89f51bdc073410c4be5384007 (diff)
downloadbusybox-w32-9067f13be067f39f6c8586926b190b7dee0def3d.tar.gz
busybox-w32-9067f13be067f39f6c8586926b190b7dee0def3d.tar.bz2
busybox-w32-9067f13be067f39f6c8586926b190b7dee0def3d.zip
NOMMU re-exec trick shuld not depend on existence of "don't daemonize"
option for every affected applet (and dnsd, for example, don't have one). Thus rework re-exec support to not require it. Code got smaller too.
Diffstat (limited to 'miscutils/watchdog.c')
-rw-r--r--miscutils/watchdog.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/miscutils/watchdog.c b/miscutils/watchdog.c
index ed9026d9e..e3d77d17e 100644
--- a/miscutils/watchdog.c
+++ b/miscutils/watchdog.c
@@ -38,12 +38,14 @@ int watchdog_main(int argc, char **argv)
38 if (optind < argc - 1 || argc == 1) 38 if (optind < argc - 1 || argc == 1)
39 bb_show_usage(); 39 bb_show_usage();
40 40
41 if (!(opts & OPT_FOREGROUND)) {
41#ifdef BB_NOMMU 42#ifdef BB_NOMMU
42 if (!(opts & OPT_FOREGROUND)) 43 if (!re_execed)
43 vfork_daemon_rexec(0, 1, argc, argv, "-F"); 44 vfork_daemon_rexec(0, 1, argv);
44#else 45#else
45 xdaemon(0, 1); 46 xdaemon(0, 1);
46#endif 47#endif
48 }
47 49
48 signal(SIGHUP, watchdog_shutdown); 50 signal(SIGHUP, watchdog_shutdown);
49 signal(SIGINT, watchdog_shutdown); 51 signal(SIGINT, watchdog_shutdown);