summaryrefslogtreecommitdiff
path: root/ripd/rip_routemap.c
diff options
context:
space:
mode:
Diffstat (limited to 'ripd/rip_routemap.c')
-rw-r--r--ripd/rip_routemap.c4
1 files changed, 2 insertions, 2 deletions
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);