Packet filter control-plane API bugfix

Don't complain about unknown fib-id's unless actually trying to
use the indicated per-address-family fib.

Change-Id: Ie8c28dbf7dac9c38193a02ff15a8529d0f90d99a
Signed-off-by: Dave Barach <dave@barachs.net>
This commit is contained in:
Dave Barach
2016-03-07 15:37:18 -05:00
parent 00bbf276be
commit d255a2782a

View File

@ -257,9 +257,14 @@ int cop_whitelist_enable_disable (cop_whitelist_enable_disable_args_t *a)
/* configured opaque data must match, or no supper */
p = hash_get (im4->fib_index_by_table_id, a->fib_id);
if (p)
fib_index = p[0];
fib_index = p[0];
else
return VNET_API_ERROR_NO_SUCH_FIB;
{
if (is_add)
return VNET_API_ERROR_NO_SUCH_FIB;
else
continue;
}
break;
case VNET_COP_IP6:
@ -267,9 +272,14 @@ int cop_whitelist_enable_disable (cop_whitelist_enable_disable_args_t *a)
next_to_add_del = IP6_RX_COP_WHITELIST;
p = hash_get (im6->fib_index_by_table_id, a->fib_id);
if (p)
fib_index = p[0];
fib_index = p[0];
else
return VNET_API_ERROR_NO_SUCH_FIB;
{
if (is_add)
return VNET_API_ERROR_NO_SUCH_FIB;
else
continue;
}
break;
case VNET_COP_DEFAULT: