diff options
| -rw-r--r-- | zebra/zserv.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/zebra/zserv.c b/zebra/zserv.c index aa7189fe89..b2ee9c0b47 100644 --- a/zebra/zserv.c +++ b/zebra/zserv.c @@ -1534,6 +1534,7 @@ static int zread_ipv6_add(struct zserv *client, u_short length, unsigned int i; struct stream *s; struct in6_addr nhop_addr; + ifindex_t ifindex; struct route_entry *re; u_char message; u_char nexthop_num; @@ -1609,6 +1610,12 @@ static int zread_ipv6_add(struct zserv *client, u_short length, nexthops[nh_count++] = nhop_addr; } break; + case NEXTHOP_TYPE_IPV6_IFINDEX: + stream_get(&nhop_addr, s, 16); + ifindex = stream_getl(s); + route_entry_nexthop_ipv6_ifindex_add( + re, &nhop_addr, ifindex); + break; case NEXTHOP_TYPE_IFINDEX: if (if_count < multipath_num) { ifindices[if_count++] = stream_getl(s); |
