aboutsummaryrefslogtreecommitdiffstats
path: root/src/vpp/api/api.c
diff options
context:
space:
mode:
authorJon Loeliger <jdl@netgate.com>2017-05-02 11:06:23 -0500
committerJohn Lo <loj@cisco.com>2017-05-02 23:26:33 +0000
commit1c7d4858369881ac4cc287c4fa16eff2e9890c1c (patch)
tree7d1698af41ef0a75eff7d1b424a4bb2dc8dbca8a /src/vpp/api/api.c
parent41da54f501338072ec9543db2e07e2c046e3964e (diff)
Prevent Bridge Domain operations on BD 0.
The default bridge domain, 0, is created automatically with static features. It should be modified by neither the CLI nor the API. So add tests for, and reject any operation on BD 0. The new API error message BD_NOT_MODIFIABLE is returned in such cases. Change-Id: Iaf3dd80c4f43cf41689ca55756a0a3525420cd12 Signed-off-by: Jon Loeliger <jdl@netgate.com>
Diffstat (limited to 'src/vpp/api/api.c')
-rw-r--r--src/vpp/api/api.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/vpp/api/api.c b/src/vpp/api/api.c
index 9c230574bf8..baf45d5c19a 100644
--- a/src/vpp/api/api.c
+++ b/src/vpp/api/api.c
@@ -446,6 +446,12 @@ vl_api_bd_ip_mac_add_del_t_handler (vl_api_bd_ip_mac_add_del_t * mp)
u32 bd_index;
uword *p;
+ if (bd_id == 0)
+ {
+ rv = VNET_API_ERROR_BD_NOT_MODIFIABLE;
+ goto out;
+ }
+
p = hash_get (bdm->bd_index_by_bd_id, bd_id);
if (p == 0)
{