diff options
Diffstat (limited to 'networking/udhcp/dhcpd.c')
-rw-r--r-- | networking/udhcp/dhcpd.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/networking/udhcp/dhcpd.c b/networking/udhcp/dhcpd.c index 6e426e6..022b872 100644 --- a/networking/udhcp/dhcpd.c +++ b/networking/udhcp/dhcpd.c @@ -37,6 +37,8 @@ //usage: IF_FEATURE_UDHCP_PORT( //usage: "\n -P N Use port N (default 67)" //usage: ) +//usage: "\nSignals:" +//usage: "\n USR1 Update lease file" #include <netinet/ether.h> #include <syslog.h> @@ -863,6 +865,10 @@ int udhcpd_main(int argc UNUSED_PARAM, char **argv) IF_FEATURE_UDHCP_PORT(SERVER_PORT = 67;) IF_FEATURE_UDHCP_PORT(CLIENT_PORT = 68;) + /* Make sure fd 0,1,2 are open */ + /* Setup the signal pipe on fds 3,4 - must be before openlog() */ + udhcp_sp_setup(); + opt = getopt32(argv, "^" "fSI:va:"IF_FEATURE_UDHCP_PORT("P:") "\0" @@ -904,9 +910,6 @@ int udhcpd_main(int argc UNUSED_PARAM, char **argv) if (server_data.auto_time > INT_MAX / 1000) server_data.auto_time = INT_MAX / 1000; - /* Make sure fd 0,1,2 are open */ - bb_sanitize_stdio(); - /* Create pidfile */ write_pidfile(server_data.pidfile); /* if (!..) bb_perror_msg("can't create pidfile %s", pidfile); */ @@ -942,9 +945,6 @@ int udhcpd_main(int argc UNUSED_PARAM, char **argv) goto ret; } - /* Setup the signal pipe */ - udhcp_sp_setup(); - continue_with_autotime: timeout_end = monotonic_sec() + server_data.auto_time; while (1) { /* loop until universe collapses */ |