summaryrefslogtreecommitdiffstats
path: root/src/vat/api_format.c
diff options
context:
space:
mode:
authorAlexander Chernavin <achernavin@netgate.com>2018-12-13 09:08:09 -0500
committerDamjan Marion <dmarion@me.com>2019-01-13 13:36:22 +0000
commitad9d528314a049971b1fb9a42562b00e07cf93f4 (patch)
tree31173f45bc3558c2ad3df62ad84b8ba6b4705788 /src/vat/api_format.c
parente589b38f98e9d8f88a3bae56549ea49d9d802989 (diff)
bonding: support custom interface IDs
Change-Id: I78fe58144fa3ba2e1c7135897a13a2541f235c91 Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
Diffstat (limited to 'src/vat/api_format.c')
-rw-r--r--src/vat/api_format.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/vat/api_format.c b/src/vat/api_format.c
index 1b61af6226a..8a9a9971af2 100644
--- a/src/vat/api_format.c
+++ b/src/vat/api_format.c
@@ -7919,6 +7919,7 @@ api_bond_create (vat_main_t * vam)
u8 mode;
u8 lb;
u8 mode_is_set = 0;
+ u32 id = ~0;
clib_memset (mac_address, 0, sizeof (mac_address));
lb = BOND_LB_L2;
@@ -7934,6 +7935,8 @@ api_bond_create (vat_main_t * vam)
else if (unformat (i, "hw-addr %U", unformat_ethernet_address,
mac_address))
custom_mac = 1;
+ else if (unformat (i, "id %u", &id))
+ ;
else
break;
}
@@ -7951,6 +7954,7 @@ api_bond_create (vat_main_t * vam)
mp->mode = mode;
mp->lb = lb;
+ mp->id = htonl (id);
if (custom_mac)
clib_memcpy (mp->mac_address, mac_address, 6);
@@ -23176,7 +23180,8 @@ _(tap_delete_v2, \
_(sw_interface_tap_v2_dump, "") \
_(bond_create, \
"[hw-addr <mac-addr>] {round-robin | active-backup | " \
- "broadcast | {lacp | xor} [load-balance { l2 | l23 | l34 }]}") \
+ "broadcast | {lacp | xor} [load-balance { l2 | l23 | l34 }]} " \
+ "[id <if-id>]") \
_(bond_delete, \
"<vpp-if-name> | sw_if_index <id>") \
_(bond_enslave, \