diff options
author | Dmitry Tejblum <tejblum@yandex-team.ru> | 2010-10-18 19:05:39 +0400 |
---|---|---|
committer | Denis Ovsienko <infrastation@yandex.ru> | 2010-10-18 19:05:39 +0400 |
commit | 08a7a91646a1ee317c402b421e3a7036a640bcf4 (patch) | |
tree | 59dc48ed11f69a61cd282783ffab25f30073f334 | |
parent | 4c9641ba4df276080c670e03f65b1d442660a50f (diff) |
zclient: fix router-id calculation for IPv6 (#595)
If router-id is not specified in ospf6d.conf, ospf6d will get it from
the zebra daemon. But ospf6d originates Link LSAs before the router-id
is returned by zebra, thus this router's Link LSAs will be flooded
with AdvRouter set to 0.
* zclient.c: zclient_start(): send ZEBRA_INTERFACE_ADD message after
ZEBRA_ROUTER_ID_ADD, not before
-rw-r--r-- | lib/zclient.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/zclient.c b/lib/zclient.c index d3d53227..52a3627d 100644 --- a/lib/zclient.c +++ b/lib/zclient.c @@ -339,12 +339,12 @@ zclient_start (struct zclient *zclient) /* Create read thread. */ zclient_event (ZCLIENT_READ, zclient); - /* We need interface information. */ - zebra_message_send (zclient, ZEBRA_INTERFACE_ADD); - /* We need router-id information. */ zebra_message_send (zclient, ZEBRA_ROUTER_ID_ADD); + /* We need interface information. */ + zebra_message_send (zclient, ZEBRA_INTERFACE_ADD); + /* Flush all redistribute request. */ for (i = 0; i < ZEBRA_ROUTE_MAX; i++) if (i != zclient->redist_default && zclient->redist[i]) |