diff options
Diffstat (limited to 'src/vnet/ip')
-rw-r--r-- | src/vnet/ip/ip4_forward.c | 9 | ||||
-rw-r--r-- | src/vnet/ip/ip6_forward.c | 9 |
2 files changed, 6 insertions, 12 deletions
diff --git a/src/vnet/ip/ip4_forward.c b/src/vnet/ip/ip4_forward.c index ea67005176f..57ad658b83f 100644 --- a/src/vnet/ip/ip4_forward.c +++ b/src/vnet/ip/ip4_forward.c @@ -653,12 +653,9 @@ ip4_add_del_interface_address_internal (vlib_main_t * vm, u32 if_address_index; ip4_address_fib_t ip4_af, *addr_fib = 0; - /* local0 interface doesn't support IP addressing */ - if (sw_if_index == 0) - { - return - clib_error_create ("local0 interface doesn't support IP addressing"); - } + error = vnet_sw_interface_supports_addressing (vnm, sw_if_index); + if (error) + return error; vec_validate (im->fib_index_by_sw_if_index, sw_if_index); ip4_addr_fib_init (&ip4_af, address, diff --git a/src/vnet/ip/ip6_forward.c b/src/vnet/ip/ip6_forward.c index ba616ebc7c7..f1de446a504 100644 --- a/src/vnet/ip/ip6_forward.c +++ b/src/vnet/ip/ip6_forward.c @@ -308,12 +308,9 @@ ip6_add_del_interface_address (vlib_main_t * vm, ip6_address_fib_t ip6_af, *addr_fib = 0; const ip6_address_t *ll_addr; - /* local0 interface doesn't support IP addressing */ - if (sw_if_index == 0) - { - return - clib_error_create ("local0 interface doesn't support IP addressing"); - } + error = vnet_sw_interface_supports_addressing (vnm, sw_if_index); + if (error) + return error; if (ip6_address_is_link_local_unicast (address)) { |