X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=config.c;h=c8f780797336b86607577c677cbcddea1e1c75a7;hp=1ca02564a9ac9fe8b45e49c5e22209643f45b375;hb=53f8ed2cdcf986389b605c79d273f08b5a687636;hpb=314b33c511f8aa53c9fb97c6a9ad9d410f06af26 diff --git a/config.c b/config.c index 1ca0256..c8f7807 100644 --- a/config.c +++ b/config.c @@ -315,12 +315,10 @@ config_init_package(const char *config) void config_init_interfaces(const char *name) { - struct uci_context *ctx; struct uci_package *p = NULL; struct uci_element *e; p = config_init_package("network"); - ctx = uci_ctx; if (!p) { fprintf(stderr, "Failed to load network config\n"); return; @@ -329,6 +327,7 @@ config_init_interfaces(const char *name) uci_network = p; config_init = true; + device_reset_config(); config_init_devices(); uci_foreach_element(&p->sections, e) { @@ -340,8 +339,10 @@ config_init_interfaces(const char *name) if (!strcmp(s->type, "interface")) config_parse_interface(s); } - device_free_unused(NULL); config_init = false; + device_reset_old(); + device_init_pending(); + device_free_unused(NULL); interface_start_pending(); }