From: Jeremy Kerr Date: Wed, 2 Apr 2014 07:44:44 +0000 (+0800) Subject: discover/network: flush addresses when bringing an interface down X-Git-Tag: v1.0.0~203 X-Git-Url: https://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=71dfb52e615d66c0ed595f0c3b0f406deb959b63 discover/network: flush addresses when bringing an interface down Signed-off-by: Jeremy Kerr --- diff --git a/discover/network.c b/discover/network.c index ca4cc44..2b7e94c 100644 --- a/discover/network.c +++ b/discover/network.c @@ -181,6 +181,15 @@ static int interface_change(struct interface *interface, bool up) process_release(interface->udhcpc_process); } + if (!up) { + rc = process_run_simple(interface, pb_system_apps.ip, + "address", "flush", "dev", interface->name, + NULL); + if (rc) + pb_log("failed to flush addresses from interface %s\n", + interface->name); + } + rc = process_run_simple(interface, pb_system_apps.ip, "link", "set", interface->name, statestr, NULL); if (rc) {