[IPV4]: ipconfig.c: fix dhcp timeout behaviour
I think there is a small bug in ipconfig.c in case IPCONFIG_DHCP is set and dhcp is used. When a DHCPOFFER is received, ip address is kept until we get DHCPACK. If no ack is received, ic_dynamic() returns negatively, but leaves the offered ip address in ic_myaddr. This makes the main loop in ip_auto_config() break and uses the maybe incomplete configuration. Not sure if it's the best way to do, but the following trivial patch correct this. Signed-off-by: Maxime Bizon <mbizon@freebox.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
2c2910a401
commit
7a1af5d7bb
@@ -1149,8 +1149,10 @@ static int __init ic_dynamic(void)
|
|||||||
ic_rarp_cleanup();
|
ic_rarp_cleanup();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (!ic_got_reply)
|
if (!ic_got_reply) {
|
||||||
|
ic_myaddr = INADDR_NONE;
|
||||||
return -1;
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
printk("IP-Config: Got %s answer from %u.%u.%u.%u, ",
|
printk("IP-Config: Got %s answer from %u.%u.%u.%u, ",
|
||||||
((ic_got_reply & IC_RARP) ? "RARP"
|
((ic_got_reply & IC_RARP) ? "RARP"
|
||||||
|
Reference in New Issue
Block a user