udhcpc: run "deconfig" script in manual renew state too. closes 9061
The bug was seen when the following is done: # killall 1 udhpc; killall 2 udhpc Performing a DHCP renew state: 2 -> 5 Sending renew... Entering released state state: 5 -> 6 <<<<<<<<<<<<<< not calling script!!!! Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
aabb0a93e9
commit
44399e00ff
@ -793,7 +793,11 @@ static void perform_renew(void)
|
|||||||
static void perform_d6_release(struct in6_addr *server_ipv6, struct in6_addr *our_cur_ipv6)
|
static void perform_d6_release(struct in6_addr *server_ipv6, struct in6_addr *our_cur_ipv6)
|
||||||
{
|
{
|
||||||
/* send release packet */
|
/* send release packet */
|
||||||
if (state == BOUND || state == RENEWING || state == REBINDING) {
|
if (state == BOUND
|
||||||
|
|| state == RENEWING
|
||||||
|
|| state == REBINDING
|
||||||
|
|| state == RENEW_REQUESTED
|
||||||
|
) {
|
||||||
bb_error_msg("unicasting a release");
|
bb_error_msg("unicasting a release");
|
||||||
send_d6_release(server_ipv6, our_cur_ipv6); /* unicast */
|
send_d6_release(server_ipv6, our_cur_ipv6); /* unicast */
|
||||||
d6_run_script(NULL, "deconfig");
|
d6_run_script(NULL, "deconfig");
|
||||||
|
@ -1118,7 +1118,11 @@ static void perform_release(uint32_t server_addr, uint32_t requested_ip)
|
|||||||
struct in_addr temp_addr;
|
struct in_addr temp_addr;
|
||||||
|
|
||||||
/* send release packet */
|
/* send release packet */
|
||||||
if (state == BOUND || state == RENEWING || state == REBINDING) {
|
if (state == BOUND
|
||||||
|
|| state == RENEWING
|
||||||
|
|| state == REBINDING
|
||||||
|
|| state == RENEW_REQUESTED
|
||||||
|
) {
|
||||||
temp_addr.s_addr = server_addr;
|
temp_addr.s_addr = server_addr;
|
||||||
strcpy(buffer, inet_ntoa(temp_addr));
|
strcpy(buffer, inet_ntoa(temp_addr));
|
||||||
temp_addr.s_addr = requested_ip;
|
temp_addr.s_addr = requested_ip;
|
||||||
|
Loading…
Reference in New Issue
Block a user