]> git.puffer.fish Git - matthieu/frr.git/commitdiff
zebra: Add support for ZEBRA_NEXTHOP_IPV4_IFINDEX
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>
Sat, 7 Jul 2012 15:06:13 +0000 (17:06 +0200)
committerDavid Lamparter <equinox@opensourcerouting.org>
Wed, 25 Jul 2012 16:07:44 +0000 (18:07 +0200)
Actually implement the IPV4_IFINDEX nexthop type that has been drifting
around as a definition forever (without any warning about it being a
placeholder).

Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
zebra/zserv.c

index 09152170cccd3c05a4f068d1143bf32ccbcacee6..9e47f23fe826abaf329ae89414d928f724a590ee 100644 (file)
@@ -775,6 +775,11 @@ zread_ipv4_add (struct zserv *client, u_short length)
              nexthop.s_addr = stream_get_ipv4 (s);
              nexthop_ipv4_add (rib, &nexthop, NULL);
              break;
+           case ZEBRA_NEXTHOP_IPV4_IFINDEX:
+             nexthop.s_addr = stream_get_ipv4 (s);
+             ifindex = stream_getl (s);
+             nexthop_ipv4_ifindex_add (rib, &nexthop, NULL, ifindex);
+             break;
            case ZEBRA_NEXTHOP_IPV6:
              stream_forward_getp (s, IPV6_MAX_BYTELEN);
              break;
@@ -852,6 +857,10 @@ zread_ipv4_delete (struct zserv *client, u_short length)
              nexthop.s_addr = stream_get_ipv4 (s);
              nexthop_p = &nexthop;
              break;
+           case ZEBRA_NEXTHOP_IPV4_IFINDEX:
+             nexthop.s_addr = stream_get_ipv4 (s);
+             ifindex = stream_getl (s);
+             break;
            case ZEBRA_NEXTHOP_IPV6:
              stream_forward_getp (s, IPV6_MAX_BYTELEN);
              break;