diff options
author | paul <paul> | 2006-05-15 10:47:53 +0000 |
---|---|---|
committer | paul <paul> | 2006-05-15 10:47:53 +0000 |
commit | 3674a1a04ab5c277938e710ec0186f5fc41dcd6b (patch) | |
tree | 32a3859c8004e33bdf02ee21648719ecc0c679b2 | |
parent | 28be1fbcda95b306d6868306094659b9af8ecb2c (diff) | |
download | quagga-3674a1a04ab5c277938e710ec0186f5fc41dcd6b.tar.bz2 quagga-3674a1a04ab5c277938e710ec0186f5fc41dcd6b.tar.xz |
[ospf6d] GNU Zebra 3563: Fix as-external forwarding address
2006-03-01 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
* ospf6_asbr.c: fix bug of needless forwarding address
* ospf6d.h: version 0.9.7r
-rw-r--r-- | ospf6d/ChangeLog | 5 | ||||
-rw-r--r-- | ospf6d/ospf6_asbr.c | 5 | ||||
-rw-r--r-- | ospf6d/ospf6d.h | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/ospf6d/ChangeLog b/ospf6d/ChangeLog index 01064aa5..6a0bb5e1 100644 --- a/ospf6d/ChangeLog +++ b/ospf6d/ChangeLog @@ -1,3 +1,8 @@ +2006-03-01 Yasuhiro Ohara <yasu@sfc.wide.ad.jp> + + * ospf6_asbr.c: fix bug of needless forwarding address + * ospf6d.h: version 0.9.7r + 2006-02-22 Yasuhiro Ohara <yasu@sfc.wide.ad.jp> * valgrind check and memory fix diff --git a/ospf6d/ospf6_asbr.c b/ospf6d/ospf6_asbr.c index 7980a643..1b6ccbd9 100644 --- a/ospf6d/ospf6_asbr.c +++ b/ospf6d/ospf6_asbr.c @@ -59,6 +59,7 @@ ospf6_as_external_lsa_originate (struct ospf6_route *route) char buffer[OSPF6_MAX_LSASIZE]; struct ospf6_lsa_header *lsa_header; struct ospf6_lsa *old, *lsa; + struct ospf6_external_info *info = route->route_option; struct ospf6_as_external_lsa *as_external_lsa; char buf[64]; @@ -91,7 +92,7 @@ ospf6_as_external_lsa_originate (struct ospf6_route *route) UNSET_FLAG (as_external_lsa->bits_metric, OSPF6_ASBR_BIT_E); /* forwarding address */ - if (! IN6_IS_ADDR_UNSPECIFIED (&route->nexthop[0].address)) + if (! IN6_IS_ADDR_UNSPECIFIED (&info->forwarding)) SET_FLAG (as_external_lsa->bits_metric, OSPF6_ASBR_BIT_F); else UNSET_FLAG (as_external_lsa->bits_metric, OSPF6_ASBR_BIT_F); @@ -120,7 +121,7 @@ ospf6_as_external_lsa_originate (struct ospf6_route *route) /* Forwarding address */ if (CHECK_FLAG (as_external_lsa->bits_metric, OSPF6_ASBR_BIT_F)) { - memcpy (p, &route->nexthop[0].address, sizeof (struct in6_addr)); + memcpy (p, &info->forwarding, sizeof (struct in6_addr)); p += sizeof (struct in6_addr); } diff --git a/ospf6d/ospf6d.h b/ospf6d/ospf6d.h index 1dfd96b5..2790fc29 100644 --- a/ospf6d/ospf6d.h +++ b/ospf6d/ospf6d.h @@ -22,7 +22,7 @@ #ifndef OSPF6D_H #define OSPF6D_H -#define OSPF6_DAEMON_VERSION "0.9.7q" +#define OSPF6_DAEMON_VERSION "0.9.7r" /* global variables */ extern int errno; |