From 7724c766bdfba5f3af5cdf5d869bcf03f45149e3 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 26 Mar 2010 09:32:09 +0100 Subject: udhcp: pass pointer to whole packet to "add option" functions This is needed for "overflow option" support function old new delta udhcp_find_option - 34 +34 udhcp_add_binary_option 94 106 +12 write_leases 227 223 -4 udhcp_init_header 86 82 -4 send_release 104 99 -5 init_packet 87 81 -6 add_client_options 160 154 -6 add_server_options 100 92 -8 udhcpd_main 1964 1954 -10 udhcpc_main 2859 2837 -22 find_option 34 - -34 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 1/8 up/down: 46/-99) Total: -53 bytes Signed-off-by: Denys Vlasenko --- networking/udhcp/files.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'networking/udhcp/files.c') diff --git a/networking/udhcp/files.c b/networking/udhcp/files.c index 1f25bb105..cf55a6b5c 100644 --- a/networking/udhcp/files.c +++ b/networking/udhcp/files.c @@ -167,10 +167,11 @@ void FAST_FUNC write_leases(void) close(fd); if (server_config.notify_file) { -// TODO: vfork-based child creation - char *cmd = xasprintf("%s %s", server_config.notify_file, server_config.lease_file); - system(cmd); - free(cmd); + char *argv[3]; + argv[0] = server_config.notify_file; + argv[1] = server_config.lease_file; + argv[2] = NULL; + spawn_and_wait(argv); } } -- cgit v1.2.3