From 32f5524c4b52a2d3a96bc48ee2437f8b9b4dbe10 Mon Sep 17 00:00:00 2001 From: Guus Sliepen Date: Sun, 11 Apr 2010 04:35:16 +0200 Subject: [PATCH] Fix reloading Subnets when StrictSubnets is set. --- src/net.c | 3 ++- src/net_setup.c | 11 +++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/net.c b/src/net.c index 528e046..db8eae7 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 118d719..cb70926 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)) -- 2.25.1