diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2007-03-26 13:20:54 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2007-03-26 13:20:54 +0000 |
commit | 5a142025d372ae5dff7d7cf98f442edaafd1dc30 (patch) | |
tree | 19d222f7d7040945cf92e239055dfdd00b8656bc /networking | |
parent | bb7fcb4229fd5ff583039f26ca1c06340e3f09ea (diff) | |
download | busybox-w32-5a142025d372ae5dff7d7cf98f442edaafd1dc30.tar.gz busybox-w32-5a142025d372ae5dff7d7cf98f442edaafd1dc30.tar.bz2 busybox-w32-5a142025d372ae5dff7d7cf98f442edaafd1dc30.zip |
move everything to new NOMMU helpers, except udhcp
Diffstat (limited to 'networking')
-rw-r--r-- | networking/dnsd.c | 7 | ||||
-rw-r--r-- | networking/httpd.c | 2 | ||||
-rw-r--r-- | networking/inetd.c | 28 | ||||
-rw-r--r-- | networking/isrv_identd.c | 4 | ||||
-rw-r--r-- | networking/telnetd.c | 2 | ||||
-rw-r--r-- | networking/zcip.c | 3 |
6 files changed, 18 insertions, 28 deletions
diff --git a/networking/dnsd.c b/networking/dnsd.c index c9c7b3a7c..8807bbedc 100644 --- a/networking/dnsd.c +++ b/networking/dnsd.c | |||
@@ -353,12 +353,7 @@ int dnsd_main(int argc, char **argv) | |||
353 | } | 353 | } |
354 | 354 | ||
355 | if (OPT_daemon) { | 355 | if (OPT_daemon) { |
356 | #ifdef BB_NOMMU | 356 | bb_daemonize_or_rexec(DAEMON_CLOSE_EXTRA_FDS, argv); |
357 | if (!re_execed) | ||
358 | vfork_daemon_rexec(1, 0, argv); | ||
359 | #else | ||
360 | xdaemon(1, 0); | ||
361 | #endif | ||
362 | openlog(applet_name, LOG_PID, LOG_DAEMON); | 357 | openlog(applet_name, LOG_PID, LOG_DAEMON); |
363 | logmode = LOGMODE_SYSLOG; | 358 | logmode = LOGMODE_SYSLOG; |
364 | } | 359 | } |
diff --git a/networking/httpd.c b/networking/httpd.c index 72b03de79..b8d9b6b6f 100644 --- a/networking/httpd.c +++ b/networking/httpd.c | |||
@@ -2044,6 +2044,6 @@ int httpd_main(int argc, char *argv[]) | |||
2044 | return miniHttpd_inetd(); | 2044 | return miniHttpd_inetd(); |
2045 | 2045 | ||
2046 | if (!(opt & OPT_FOREGROUND)) | 2046 | if (!(opt & OPT_FOREGROUND)) |
2047 | xdaemon(1, 0); /* don't change current directory */ | 2047 | bb_daemonize(0); /* don't change current directory */ |
2048 | return miniHttpd(config->server_socket); | 2048 | return miniHttpd(config->server_socket); |
2049 | } | 2049 | } |
diff --git a/networking/inetd.c b/networking/inetd.c index 83123463f..4faa4203a 100644 --- a/networking/inetd.c +++ b/networking/inetd.c | |||
@@ -1274,30 +1274,24 @@ int inetd_main(int argc, char *argv[]) | |||
1274 | LastArg = envp[-1] + strlen(envp[-1]); | 1274 | LastArg = envp[-1] + strlen(envp[-1]); |
1275 | #endif | 1275 | #endif |
1276 | 1276 | ||
1277 | opt = getopt32(argc, argv, "R:f", &stoomany); | ||
1278 | if(opt & 1) { | ||
1279 | toomany = xatoi_u(stoomany); | ||
1280 | } | ||
1281 | argc -= optind; | ||
1282 | argv += optind; | ||
1283 | |||
1284 | uid = getuid(); | 1277 | uid = getuid(); |
1285 | if (uid != 0) | 1278 | if (uid != 0) |
1286 | config_filename = NULL; | 1279 | config_filename = NULL; |
1287 | if (argc > 0) | 1280 | |
1281 | opt = getopt32(argc, argv, "R:f", &stoomany); | ||
1282 | if (opt & 1) | ||
1283 | toomany = xatoi_u(stoomany); | ||
1284 | argv += optind; | ||
1285 | argc -= optind; | ||
1286 | if (argc) | ||
1288 | config_filename = argv[0]; | 1287 | config_filename = argv[0]; |
1289 | if (config_filename == NULL) | 1288 | if (config_filename == NULL) |
1290 | bb_error_msg_and_die("non-root must specify a config file"); | 1289 | bb_error_msg_and_die("non-root must specify a config file"); |
1291 | 1290 | ||
1292 | #ifdef BB_NOMMU | 1291 | if (!(opt & 2)) |
1293 | if (!(opt & 2)) { | 1292 | bb_daemonize_or_rexec(0, argv - optind); |
1294 | if (!re_execed) | 1293 | else |
1295 | vfork_daemon_rexec(0, 0, argv); | 1294 | bb_sanitize_stdio(); |
1296 | } | ||
1297 | bb_sanitize_stdio(); | ||
1298 | #else | ||
1299 | bb_sanitize_stdio_maybe_daemonize(!(opt & 2)); | ||
1300 | #endif | ||
1301 | openlog(applet_name, LOG_PID | LOG_NOWAIT, LOG_DAEMON); | 1295 | openlog(applet_name, LOG_PID | LOG_NOWAIT, LOG_DAEMON); |
1302 | logmode = LOGMODE_SYSLOG; | 1296 | logmode = LOGMODE_SYSLOG; |
1303 | 1297 | ||
diff --git a/networking/isrv_identd.c b/networking/isrv_identd.c index f9ab0b2c0..c230c7ec3 100644 --- a/networking/isrv_identd.c +++ b/networking/isrv_identd.c | |||
@@ -112,7 +112,9 @@ int fakeidentd_main(int argc, char **argv) | |||
112 | bogouser = argv[optind]; | 112 | bogouser = argv[optind]; |
113 | 113 | ||
114 | /* Daemonize if no -f and no -i and no -w */ | 114 | /* Daemonize if no -f and no -i and no -w */ |
115 | bb_sanitize_stdio_maybe_daemonize(!(opt & OPT_fiw)); | 115 | if (!(opt & OPT_fiw)); |
116 | bb_daemonize_or_rexec(0, argv); | ||
117 | |||
116 | /* Where to log in inetd modes? "Classic" inetd | 118 | /* Where to log in inetd modes? "Classic" inetd |
117 | * probably has its stderr /dev/null'ed (we need log to syslog?), | 119 | * probably has its stderr /dev/null'ed (we need log to syslog?), |
118 | * but daemontools-like utilities usually expect that children | 120 | * but daemontools-like utilities usually expect that children |
diff --git a/networking/telnetd.c b/networking/telnetd.c index ef9b1ac74..5c0463bab 100644 --- a/networking/telnetd.c +++ b/networking/telnetd.c | |||
@@ -415,7 +415,7 @@ int telnetd_main(int argc, char **argv) | |||
415 | master_fd = create_and_bind_stream_or_die(opt_bindaddr, portnbr); | 415 | master_fd = create_and_bind_stream_or_die(opt_bindaddr, portnbr); |
416 | xlisten(master_fd, 1); | 416 | xlisten(master_fd, 1); |
417 | if (!(opt & OPT_FOREGROUND)) | 417 | if (!(opt & OPT_FOREGROUND)) |
418 | xdaemon(0, 0); | 418 | bb_daemonize(DAEMON_CHDIR_ROOT); |
419 | } | 419 | } |
420 | #else | 420 | #else |
421 | sessions = make_new_session(); | 421 | sessions = make_new_session(); |
diff --git a/networking/zcip.c b/networking/zcip.c index c50d5abaf..c0cf665dd 100644 --- a/networking/zcip.c +++ b/networking/zcip.c | |||
@@ -271,9 +271,8 @@ int zcip_main(int argc, char *argv[]) | |||
271 | 271 | ||
272 | // daemonize now; don't delay system startup | 272 | // daemonize now; don't delay system startup |
273 | if (!FOREGROUND) { | 273 | if (!FOREGROUND) { |
274 | /* bb_daemonize(); - bad, will close fd! */ | ||
275 | //NOMMU | 274 | //NOMMU |
276 | xdaemon(0, 0); | 275 | bb_daemonize(DAEMON_CHDIR_ROOT); |
277 | bb_info_msg("start, interface %s", intf); | 276 | bb_info_msg("start, interface %s", intf); |
278 | } | 277 | } |
279 | 278 | ||