diff options
author | hasso <hasso> | 2004-10-19 19:44:43 +0000 |
---|---|---|
committer | hasso <hasso> | 2004-10-19 19:44:43 +0000 |
commit | 3fb9cd6ef456959b6eff939d5c316f6785c2dda4 (patch) | |
tree | e350cb3ef7b20b8bbccfb1aa9309152311e845bd /zebra/rt_netlink.c | |
parent | 5ae35f45f1292dce3a01f241accafeb2e59b10cc (diff) |
OK. Here it is - PtP patch from Andrew J. Schorr. No problems with ospfd,
ripd might need some more testing though.
Diffstat (limited to 'zebra/rt_netlink.c')
-rw-r--r-- | zebra/rt_netlink.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c index ee61cb27..50e83b77 100644 --- a/zebra/rt_netlink.c +++ b/zebra/rt_netlink.c @@ -596,7 +596,9 @@ netlink_interface_addr (struct sockaddr_nl *snl, struct nlmsghdr *h) if (tb[IFA_LOCAL]) { addr = RTA_DATA (tb[IFA_LOCAL]); - if (tb[IFA_ADDRESS]) + if (tb[IFA_ADDRESS] && + memcmp(RTA_DATA(tb[IFA_ADDRESS]),RTA_DATA(tb[IFA_LOCAL]),4)) + /* if IFA_ADDRESS != IFA_LOCAL, then it's the peer address */ broad = RTA_DATA (tb[IFA_ADDRESS]); else broad = NULL; |