From: Guus Sliepen Date: Sun, 11 Apr 2010 02:35:16 +0000 (+0200) Subject: Fix reloading Subnets when StrictSubnets is set. X-Git-Tag: import-tinc-1.1~550^2~6 X-Git-Url: https://git.meshlink.io/?a=commitdiff_plain;h=32f5524c4b52a2d3a96bc48ee2437f8b9b4dbe10;p=meshlink Fix reloading Subnets when StrictSubnets is set. --- diff --git a/src/net.c b/src/net.c index 528e046b..db8eae76 100644 --- a/src/net.c +++ b/src/net.c @@ -508,8 +508,9 @@ int main_loop(void) { send_del_subnet(broadcast, subnet); subnet_del(subnet->owner, subnet); } else if(subnet->expires == -1) { - send_add_subnet(broadcast, subnet); subnet->expires = 0; + } else { + send_add_subnet(broadcast, subnet); } } } diff --git a/src/net_setup.c b/src/net_setup.c index 118d719c..cb70926a 100644 --- a/src/net_setup.c +++ b/src/net_setup.c @@ -228,9 +228,6 @@ void load_all_subnets(void) { continue; n = lookup_node(ent->d_name); - if(n) - continue; - #ifdef _DIRENT_HAVE_D_TYPE //if(ent->d_type != DT_REG) // continue; @@ -243,9 +240,11 @@ void load_all_subnets(void) { if(!result) continue; - n = new_node(); - n->name = xstrdup(ent->d_name); - node_add(n); + if(!n) { + n = new_node(); + n->name = xstrdup(ent->d_name); + node_add(n); + } for(cfg = lookup_config(config_tree, "Subnet"); cfg; cfg = lookup_config_next(config_tree, cfg)) { if(!get_config_subnet(cfg, &s))