From dc625e86063125f8ecaaa1502c3cf53f44d76eff Mon Sep 17 00:00:00 2001 From: hasso Date: Thu, 26 May 2005 06:26:40 +0000 Subject: * rip_routemap.c: In case of '0.0.0.0' used as 'nexthop', use sender address as nexthop in routemap. Fixes bugzilla #186. [backport candidate] --- ripd/ChangeLog | 5 +++++ ripd/rip_routemap.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ripd/ChangeLog b/ripd/ChangeLog index 9e787d07..bd487f64 100644 --- a/ripd/ChangeLog +++ b/ripd/ChangeLog @@ -1,3 +1,8 @@ +2005-05-26 Hasso Tepper + + * rip_routemap.c: In case of '0.0.0.0' used as 'nexthop', use sender + address as nexthop in routemap. + 2005-05-26 Hasso Tepper * rip_routemap.c: Make "match interface" routemap command match both - diff --git a/ripd/rip_routemap.c b/ripd/rip_routemap.c index 63d0ccce..275f683e 100644 --- a/ripd/rip_routemap.c +++ b/ripd/rip_routemap.c @@ -275,7 +275,7 @@ route_match_ip_next_hop (void *rule, struct prefix *prefix, { rinfo = object; p.family = AF_INET; - p.prefix = rinfo->nexthop; + p.prefix = (rinfo->nexthop.s_addr) ? rinfo->nexthop : rinfo->from; p.prefixlen = IPV4_MAX_BITLEN; alist = access_list_lookup (AFI_IP, (char *) rule); @@ -326,7 +326,7 @@ route_match_ip_next_hop_prefix_list (void *rule, struct prefix *prefix, { rinfo = object; p.family = AF_INET; - p.prefix = rinfo->nexthop; + p.prefix = (rinfo->nexthop.s_addr) ? rinfo->nexthop : rinfo->from; p.prefixlen = IPV4_MAX_BITLEN; plist = prefix_list_lookup (AFI_IP, (char *) rule); -- cgit v1.2.1