summaryrefslogtreecommitdiff
path: root/nest
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2015-11-24 15:21:11 +0100
committerOndrej Zajicek (work) <santiago@crfreenet.org>2015-11-24 15:21:11 +0100
commit90f78507f4a13673ccf0ba7c786b43d9e882fca7 (patch)
treee7881d0b56a45609514a4aa9f75873fcad813f0e /nest
parent8eb8e546dc8cc647fcfa4a3a17dfa8ab36b00958 (diff)
parentad27615760e2795da3efe5e97c0e888281d5ca59 (diff)
Merge branch 'master' into rip-new
Diffstat (limited to 'nest')
-rw-r--r--nest/proto.c2
-rw-r--r--nest/rt-roa.c2
-rw-r--r--nest/rt-table.c5
3 files changed, 5 insertions, 4 deletions
diff --git a/nest/proto.c b/nest/proto.c
index 6531083c..d04da333 100644
--- a/nest/proto.c
+++ b/nest/proto.c
@@ -521,7 +521,7 @@ protos_commit(struct config *new, struct config *old, int force_reconfig, int ty
WALK_LIST(oc, old->protos)
{
p = oc->proto;
- sym = cf_find_symbol(oc->name);
+ sym = cf_find_symbol(new, oc->name);
if (sym && sym->class == SYM_PROTO && !new->shutdown)
{
/* Found match, let's check if we can smoothly switch to new configuration */
diff --git a/nest/rt-roa.c b/nest/rt-roa.c
index aa453f16..0fd89667 100644
--- a/nest/rt-roa.c
+++ b/nest/rt-roa.c
@@ -311,7 +311,7 @@ roa_commit(struct config *new, struct config *old)
if (old)
WALK_LIST(t, roa_table_list)
{
- struct symbol *sym = cf_find_symbol(t->name);
+ struct symbol *sym = cf_find_symbol(new, t->name);
if (sym && sym->class == SYM_ROA)
{
/* Found old table in new config */
diff --git a/nest/rt-table.c b/nest/rt-table.c
index b39f2a69..57c8b8e0 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -1657,7 +1657,7 @@ rt_prune_loop(void)
void
rt_preconfig(struct config *c)
{
- struct symbol *s = cf_find_symbol("master");
+ struct symbol *s = cf_get_symbol("master");
init_list(&c->tables);
c->master_rtc = rt_new_table(s);
@@ -1862,6 +1862,7 @@ rt_unlock_table(rtable *r)
{
struct config *conf = r->deleted;
DBG("Deleting routing table %s\n", r->name);
+ r->config->table = NULL;
if (r->hostcache)
rt_free_hostcache(r);
rem_node(&r->n);
@@ -1897,7 +1898,7 @@ rt_commit(struct config *new, struct config *old)
rtable *ot = o->table;
if (!ot->deleted)
{
- struct symbol *sym = cf_find_symbol(o->name);
+ struct symbol *sym = cf_find_symbol(new, o->name);
if (sym && sym->class == SYM_TABLE && !new->shutdown)
{
DBG("\t%s: same\n", o->name);