diff options
| author | David Lamparter <equinox@diac24.net> | 2018-08-31 08:51:01 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-08-31 08:51:01 +0200 |
| commit | 5c724747c122cf7be0dcded9af6b88b31bf5f6c6 (patch) | |
| tree | b9f1056ca504225b46089d69d25a12e40b2f72b1 /zebra/interface.h | |
| parent | a91a5dcdd6f797336fc1e6ccf69567a384a76097 (diff) | |
| parent | 0e4864eaf0dfd5d883d8192a905405b9a72af68e (diff) | |
Merge pull request #2923 from pguibert6WIND/fix_veth_namespace
zebra: when veth link is used across vrf, the link may not be good
Diffstat (limited to 'zebra/interface.h')
| -rw-r--r-- | zebra/interface.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/zebra/interface.h b/zebra/interface.h index 9634bfdb3f..956d430cf9 100644 --- a/zebra/interface.h +++ b/zebra/interface.h @@ -191,6 +191,7 @@ typedef enum { ZEBRA_IF_BRIDGE, /* bridge device */ ZEBRA_IF_VLAN, /* VLAN sub-interface */ ZEBRA_IF_MACVLAN, /* MAC VLAN interface*/ + ZEBRA_IF_VETH, /* VETH interface*/ } zebra_iftype_t; /* Zebra "slave" interface type */ @@ -312,7 +313,10 @@ static inline void zebra_if_set_ziftype(struct interface *ifp, #define IS_ZEBRA_IF_MACVLAN(ifp) \ (((struct zebra_if *)(ifp->info))->zif_type == ZEBRA_IF_MACVLAN) -#define IS_ZEBRA_IF_BRIDGE_SLAVE(ifp) \ +#define IS_ZEBRA_IF_VETH(ifp) \ + (((struct zebra_if *)(ifp->info))->zif_type == ZEBRA_IF_VETH) + +#define IS_ZEBRA_IF_BRIDGE_SLAVE(ifp) \ (((struct zebra_if *)(ifp->info))->zif_slave_type \ == ZEBRA_IF_SLAVE_BRIDGE) @@ -344,7 +348,8 @@ extern int if_subnet_add(struct interface *, struct connected *); extern int if_subnet_delete(struct interface *, struct connected *); extern int ipv6_address_configured(struct interface *ifp); extern void if_handle_vrf_change(struct interface *ifp, vrf_id_t vrf_id); -extern void zebra_if_update_link(struct interface *ifp, ifindex_t link_ifindex); +extern void zebra_if_update_link(struct interface *ifp, ifindex_t link_ifindex, + ns_id_t ns_id); extern void vrf_add_update(struct vrf *vrfp); |
