Add custom mac address option to vhost interfaces.
[vpp.git] / vpp / api / vpe.api
index 6b54ab8..05ba556 100644 (file)
@@ -1903,6 +1903,8 @@ define l2_interface_vlan_tag_rewrite_reply {
     @param client_index - opaque cookie to identify the sender
     @param is_server - our side is socket server
     @param sock_filename - unix socket filename, used to speak with frontend
+    @param use_custom_mac - enable or disable the use of the provided hardware address
+    @param mac_address - hardware address to use if 'use_custom_mac' is set
 */
 define create_vhost_user_if {
    u32 client_index;
@@ -1911,6 +1913,8 @@ define create_vhost_user_if {
    u8 sock_filename[256];
    u8 renumber;
    u32 custom_dev_instance;
+   u8 use_custom_mac;
+   u8 mac_address[6];
 };
 
 /** \brief vhost-user interface create response
@@ -2752,3 +2756,85 @@ define map_summary_stats_reply {
     u64 total_ip4_fragments;
     u64 total_security_check[2];
 };
+
+/** \brief cop: enable/disable junk filtration features on an interface
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param sw_if_inded - desired interface
+    @param enable_disable - 1 => enable, 0 => disable
+*/
+
+define cop_interface_enable_disable {
+    u32 client_index;
+    u32 context;
+    u32 sw_if_index;
+    u8 enable_disable;
+};
+
+/** \brief cop: interface enable/disable junk filtration reply
+    @param context - returned sender context, to match reply w/ request
+    @param retval - return code
+*/
+
+define cop_interface_enable_disable_reply {
+    u32 context;
+    i32 retval;
+};
+
+/** \brief cop: enable/disable whitelist filtration features on an interface
+    Note: the supplied fib_id must match in order to remove the feature!
+    
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param sw_if_index - interface handle, physical interfaces only
+    @param fib_id - fib identifier for the whitelist / blacklist fib
+    @param ip4 - 1 => enable ip4 filtration, 0=> disable ip4 filtration
+    @param ip6 - 1 => enable ip6 filtration, 0=> disable ip6 filtration
+    @param default_cop -  1 => enable non-ip4, non-ip6 filtration 0=> disable it
+*/
+
+define cop_whitelist_enable_disable {
+    u32 client_index;
+    u32 context;
+    u32 sw_if_index;
+    u32 fib_id;
+    u8 ip4;
+    u8 ip6;
+    u8 default_cop;
+};
+
+/** \brief cop: interface enable/disable junk filtration reply
+    @param context - returned sender context, to match reply w/ request
+    @param retval - return code
+*/
+
+define cop_whitelist_enable_disable_reply {
+    u32 context;
+    i32 retval;
+};
+
+/** \brief get_node_graph - get a copy of the vpp node graph
+    including the current set of graph arcs.
+
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+*/
+
+define get_node_graph {
+    u32 client_index;
+    u32 context;
+};
+
+/** \brief get_node_graph_reply
+    @param context - returned sender context, to match reply w/ request
+    @param retval - return code
+    @param reply_in_shmem - result from vlib_node_serialize, in shared
+    memory. Process with vlib_node_unserialize, remember to switch
+    heaps and free the result.
+*/
+
+define get_node_graph_reply {
+    u32 context;
+    i32 retval;
+    u64 reply_in_shmem;
+};