From 9f7b92a2e13b184b1d6f7d9fbddc133666224bcf Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Wed, 15 Aug 2007 20:03:36 +0000 Subject: [PATCH] dhcpd: make -S and -f actually work --- include/usage.h | 1 + networking/udhcp/dhcpd.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/include/usage.h b/include/usage.h index d9e2857e8..e2686a2b4 100644 --- a/include/usage.h +++ b/include/usage.h @@ -3676,6 +3676,7 @@ USE_FEATURE_RUN_PARTS_FANCY("\n -l Prints names of all matching files even when "[-fS] [configfile]" \ #define udhcpd_full_usage \ + "DHCP server" \ "\n -f Stay in foreground" \ "\n -S Log to syslog too" diff --git a/networking/udhcp/dhcpd.c b/networking/udhcp/dhcpd.c index d8e80e30d..fb42e2f73 100644 --- a/networking/udhcp/dhcpd.c +++ b/networking/udhcp/dhcpd.c @@ -37,6 +37,7 @@ int udhcpd_main(int argc, char **argv) struct dhcpOfferedAddr *lease, static_lease; opt = getopt32(argc, argv, "fS"); + argv += optind; if (!(opt & 1)) { /* no -f */ bb_daemonize_or_rexec(0, argv); @@ -50,7 +51,7 @@ int udhcpd_main(int argc, char **argv) /* Would rather not do read_config before daemonization - * otherwise NOMMU machines will parse config twice */ - read_config(argv[1] ? argv[1] : DHCPD_CONF_FILE); + read_config(argv[0] ? argv[0] : DHCPD_CONF_FILE); /* Make sure fd 0,1,2 are open */ bb_sanitize_stdio();