diff options
Diffstat (limited to 'networking/udhcp/d6_dhcpc.c')
-rw-r--r-- | networking/udhcp/d6_dhcpc.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/networking/udhcp/d6_dhcpc.c b/networking/udhcp/d6_dhcpc.c index 6ff040d..ddf3412 100644 --- a/networking/udhcp/d6_dhcpc.c +++ b/networking/udhcp/d6_dhcpc.c @@ -800,10 +800,15 @@ static void perform_d6_release(struct in6_addr *server_ipv6, struct in6_addr *ou ) { bb_error_msg("unicasting a release"); send_d6_release(server_ipv6, our_cur_ipv6); /* unicast */ - d6_run_script(NULL, "deconfig"); } bb_error_msg("entering released state"); - +/* + * We can be here on: SIGUSR2, + * or on exit (SIGTERM) and -R "release on quit" is specified. + * Users requested to be notified in all cases, even if not in one + * of the states above. + */ + d6_run_script(NULL, "deconfig"); change_listen_mode(LISTEN_NONE); state = RELEASED; } |