#include "netifd.h"
#include "device.h"
#include "interface.h"
+#include "interface-ip.h"
#include "proto.h"
#include "ubus.h"
#include "config.h"
static void
mark_interface_down(struct interface *iface)
{
+ interface_del_all_routes(iface);
interface_del_ctx_addr(iface, NULL);
- device_release(iface->main_dev.dev);
+ device_release(&iface->main_dev);
iface->state = IFS_DOWN;
}
if (iface->state != IFS_DOWN)
return 0;
- ret = device_claim(iface->main_dev.dev);
+ ret = device_claim(&iface->main_dev);
if (ret)
return ret;
}
netifd_ubus_add_interface(iface);
+ config_set_state(&iface->config, attr);
return iface;
}