diff options
-rw-r--r-- | doc/bird.sgml | 12 | ||||
-rw-r--r-- | nest/rt-table.c | 1 |
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(); } |