aboutsummaryrefslogtreecommitdiffstats
path: root/vpp/vpp-api/vpe.api
diff options
context:
space:
mode:
authorDave Barach <dave@barachs.net>2016-11-28 11:41:35 -0500
committerDave Wallace <dwallacelf@gmail.com>2016-12-01 22:27:31 +0000
commit7be864ad0d8e3b139a277fb4a0234480f0cc3daa (patch)
tree75e69823c8cca3b780f27b54f2753f4ba7a987a5 /vpp/vpp-api/vpe.api
parente245d5ecef9a7b0969d160943b0a817c46e09f71 (diff)
Add a 64-byte interface "tag" for vhost and tap interfaces
This patch should dispose of spurious objections around interface tag requirements, currently in use as excuses not to support the vpp ML2 plugin. Add "u8 tag[64];" to the sw_interface_details message sent by vpp to control-plane clients. Add u8 tag[64] to the create_vhost_user_if and tap_connect APIs. Added debug CLI to set/show/clear the interface tag on any vnet sw interface. Added the sw_interface_tag_add_del API to set/clear tags on any vnet sw interface. There can be no expectation of "tag atomicity" with respect to physical hardware. Vpp discovers devices before establishing a control-plane connection. This patch upload verifies using the csit oper-161128 branch Change-Id: If8520119e7a586c5ccf0fdda82484ac205622855 Signed-off-by: Dave Barach <dave@barachs.net>
Diffstat (limited to 'vpp/vpp-api/vpe.api')
-rw-r--r--vpp/vpp-api/vpe.api28
1 files changed, 28 insertions, 0 deletions
diff --git a/vpp/vpp-api/vpe.api b/vpp/vpp-api/vpe.api
index 5ab21029..bcc3f4ec 100644
--- a/vpp/vpp-api/vpe.api
+++ b/vpp/vpp-api/vpe.api
@@ -117,6 +117,7 @@ define sw_interface_details
u32 vtr_push_dot1q; // ethertype of first pushed tag is dot1q/dot1ad
u32 vtr_tag1; // first pushed tag
u32 vtr_tag2; // second pushed tag
+ u8 tag[64];
};
/* works */
@@ -226,6 +227,7 @@ define tap_connect
u8 mac_address[6];
u8 renumber;
u32 custom_dev_instance;
+ u8 tag[64];
};
/** \brief Reply for tap connect request
@@ -2269,6 +2271,7 @@ define create_vhost_user_if
u32 custom_dev_instance;
u8 use_custom_mac;
u8 mac_address[6];
+ u8 tag[64];
};
/** \brief vhost-user interface create response
@@ -5518,3 +5521,28 @@ define feature_enable_disable_reply
u32 context;
i32 retval;
};
+
+/** \brief Set / clear software interface tag
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - the interface
+ @param add_del - 1 = add, 0 = delete
+ @param tag - an ascii tag
+*/
+define sw_interface_tag_add_del {
+ u32 client_index;
+ u32 context;
+ u8 is_add;
+ u32 sw_if_index;
+ u8 tag[64];
+};
+
+/** \brief Reply to set / clear software interface tag
+ @param context - sender context which was passed in the request
+ @param retval - return code for the request
+*/
+define sw_interface_tag_add_del_reply
+{
+ u32 context;
+ i32 retval;
+};