summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/bird.sgml12
-rw-r--r--nest/rt-table.c1
2 files changed, 7 insertions, 6 deletions
diff --git a/doc/bird.sgml b/doc/bird.sgml
index 4b72ac61..9e74470f 100644
--- a/doc/bird.sgml
+++ b/doc/bird.sgml
@@ -903,13 +903,13 @@ for each neighbor using the following configuration parameters:
to send both addresses but does not know link-local address.
This situation might happen when routes from other protocols
are exported to BGP, or when improper updates are received
- from BGP peers. <tag/self/ means that BIRD advertises its own
- local address instead. <tag/drop/ means that BIRD skips that
- prefixes and logs error. <tag/ignore/ means that BIRD ignores
+ from BGP peers. <cf/self/ means that BIRD advertises its own
+ local address instead. <cf/drop/ means that BIRD skips that
+ prefixes and logs error. <cf/ignore/ means that BIRD ignores
the problem and sends just the global address (and therefore
- forms improper BGP update). Default: <tag/self/, unless BIRD
- is configured as a route server (option <tag/rs client/), in
- that case default is <tag/drop/, because route servers usually
+ forms improper BGP update). Default: <cf/self/, unless BIRD
+ is configured as a route server (option <cf/rs client/), in
+ that case default is <cf/drop/, because route servers usually
does not forward packets ifselves.
<tag>source address <m/ip/</tag> Define local address we should use
diff --git a/nest/rt-table.c b/nest/rt-table.c
index 87bf0dc7..dda0e56b 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -636,6 +636,7 @@ rte_update(rtable *table, net *net, struct proto *p, struct proto *src, rte *new
drop:
rte_free(new);
+ rte_recalculate(table, net, p, src, NULL, NULL);
rte_update_unlock();
}