@param interface_name - name of the interface
@param link_duplex - 1 if half duplex, 2 if full duplex
@param link_speed - 1 = 10M, 2 = 100M, 4 = 1G, 8 = 10G, 16 = 40G, 32 = 100G
+ @param link_MTU - max. transmittion unit
@param sub_if_id - A number 0-N to uniquely identify this subif on super if
@param sub_dot1ad - 0 = dot1q, 1=dot1ad
@param sub_number_of_tags - Number of tags (0 - 2)
/* 1 = 10M, 2 = 100M, 4 = 1G, 8 = 10G, 16 = 40G, 32 = 100G */
u8 link_speed;
+
+ /* MTU */
+ u16 link_mtu;
/* Subinterface ID. A number 0-N to uniquely identify this subinterface under the super interface*/
u32 sub_id;
@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;
u8 sock_filename[256];
u8 renumber;
u32 custom_dev_instance;
+ u8 use_custom_mac;
+ u8 mac_address[6];
};
/** \brief vhost-user interface create response
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;
+};
+
+/** \brief Clear interface statistics
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param sw_if_index - index of the interface to clear statistics
+*/
+define sw_interface_clear_stats {
+ u32 client_index;
+ u32 context;
+ u32 sw_if_index;
+};
+
+/** \brief Reply to sw_interface_clear_stats
+ @param context - sender context which was passed in the request
+ @param retval - return code of the set flags request
+*/
+define sw_interface_clear_stats_reply {
+ u32 context;
+ i32 retval;
+};
+
+/** \brief IOAM Trace : Set TRACE profile
+ @param id - profile id
+ @param trace_type - Trace type
+ @param trace_num_elt - Number of nodes in trace path
+ @param trace_ppc - Trace PPC (none/encap/decap)
+ @param trace_tsp - Trace timestamp precision (0-sec,1-ms,2-us,3-ns)
+ @param trace_app_data - Trace application data, can be any 4 bytes
+ @param pow_enable - Proof of Work enabled or not flag
+ @param node_id - Id of this node
+*/
+define trace_profile_add {
+ u32 client_index;
+ u32 context;
+ u16 id;
+ u8 trace_type;
+ u8 trace_num_elt;
+ u8 trace_ppc;
+ u8 trace_tsp;
+ u32 trace_app_data;
+ u8 pow_enable;
+ u32 node_id;
+};
+
+/** \brief Trace profile add / del response
+ @param context - sender context, to match reply w/ request
+ @param retval - return value for request
+*/
+define trace_profile_add_reply {
+ u32 context;
+ i32 retval;
+};
+
+/** \brief IOAM Trace enable trace profile for a flow
+ @param id - id of the trace profile to be applied
+ @param dest_ipv6 - Destination IPv6 address
+ @param prefix_length - prefix mask
+ @param vrf_id - VRF ID
+ @param trace_op - Trace operation (add/mod/del)
+ @param enable - apply/remove the trace profile for the flow
+*/
+define trace_profile_apply {
+ u32 client_index;
+ u32 context;
+ u16 id;
+ u8 dest_ipv6[16];
+ u32 prefix_length;
+ u32 vrf_id;
+ u8 trace_op;
+ u8 enable;
+};
+
+/** \brief Trace profile apply response
+ @param context - sender context, to match reply w/ request
+ @param retval - return value for request
+*/
+define trace_profile_apply_reply {
+ u32 context;
+ i32 retval;
+};
+
+/** \brief Delete Trace Profile
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param index - MAP Domain index
+*/
+define trace_profile_del {
+ u32 client_index;
+ u32 context;
+ u16 id;
+};
+
+/** \brief Trace profile add / del response
+ @param context - sender context, to match reply w/ request
+ @param retval - return value for request
+*/
+define trace_profile_del_reply {
+ u32 context;
+ i32 retval;
+};