VPP-203 Find the relative next node index by node names
[vpp.git] / vpp / vpp-api / vpe.api
index 033ba24..25e6eba 100644 (file)
@@ -857,7 +857,7 @@ define set_ip_flow_hash_reply {
 /** \brief IPv6 router advertisement config request
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
-    @param surpress -
+    @param suppress -
     @param managed -
     @param other -
     @param ll_option -
@@ -875,7 +875,7 @@ define sw_interface_ip6nd_ra_config {
     u32 client_index;
     u32 context;
     u32 sw_if_index;
-    u8 surpress;
+    u8 suppress;
     u8  managed;
     u8 other;
     u8 ll_option;
@@ -1091,7 +1091,7 @@ define cli_request {
 */
 define cli_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
     u64 reply_in_shmem;
 };
 
@@ -1392,6 +1392,7 @@ define l2fib_add_del {
     u8 is_add;
     u8 static_mac;
     u8 filter_mac;
+    u8 bvi_mac;
 };
 
 /** \brief L2 FIB add entry response
@@ -1424,7 +1425,7 @@ define l2_flags {
 */
 define l2_flags_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
     u32 resulting_feature_bitmap;
 };
 
@@ -1451,7 +1452,7 @@ define bridge_flags {
 */
 define bridge_flags_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
     u32 resulting_feature_bitmap;
 };
 
@@ -1480,7 +1481,7 @@ define bd_ip_mac_add_del {
 */
 define bd_ip_mac_add_del_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
 };
 
 /** \brief Add/Delete classification table request
@@ -2406,12 +2407,44 @@ define lisp_add_del_remote_mapping {
     @param context - returned sender context, to match reply w/ request
     @param retval - return code
 */
-
 define lisp_add_del_remote_mapping_reply {
     u32 context;
     i32 retval;
 };
 
+/** \brief add or delete LISP adjacency adjacency
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param is_add - add address if non-zero, else delete
+    @param vni - virtual network instance
+    @param eid_type -
+      0 : ipv4
+      1 : ipv6
+      2 : mac
+    @param deid - destination EID
+    @param seid - source EID
+*/
+define lisp_add_del_adjacency {
+    u32 client_index;
+    u32 context;
+    u8  is_add;
+    u32 vni;
+    u8 eid_type;
+    u8 deid[16];
+    u8 seid[16];
+    u8 deid_len;
+    u8 seid_len;
+};
+
+/** \brief Reply for lisp_add_del_adjacency
+    @param context - returned sender context, to match reply w/ request
+    @param retval - return code
+*/
+define lisp_add_del_adjacency_reply {
+    u32 context;
+    i32 retval;
+};
+
 /** \brief add or delete map request itr rlocs
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
@@ -2504,10 +2537,25 @@ manual_java define lisp_local_eid_table_details {
 /** \brief Request for local eid table summary status
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
+    @param eid_set - if non-zero request info about specific mapping
+    @param vni - virtual network instance; valid only if eid_set != 0
+    @param prefix_length - prefix length if EID is IP address;
+      valid only if eid_set != 0
+    @param eid_type - EID type; valid only if eid_set != 0
+      Supported values:
+        0: EID is IPv4
+        1: EID is IPv6
+        2: EID is ethernet address
+    @param eid - endpoint identifier
  */
 define lisp_local_eid_table_dump {
     u32 client_index;
     u32 context;
+    u8  eid_set;
+    u8  prefix_length;
+    u32 vni;
+    u8  eid_type;
+    u8  eid[16];
 };
 
 /** \brief Shows relationship between vni and vrf
@@ -2694,7 +2742,7 @@ define bridge_domain_add_del {
 */
 define bridge_domain_add_del_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
 };
 
 /** \brief L2 bridge domain request operational state details
@@ -3571,6 +3619,12 @@ define af_packet_delete_reply {
     @param rate_type - rate type
     @param round_type - rounding type
     @param type - policer algorithm
+    @param conform_action_type - conform action type
+    @param conform_dscp - DSCP for conform mar-and-transmit action
+    @param exceed_action_type - exceed action type
+    @param exceed_dscp - DSCP for exceed mar-and-transmit action
+    @param violate_action_type - violate action type
+    @param violate_dscp - DSCP for violate mar-and-transmit action
 */
 define policer_add_del {
     u32 client_index;
@@ -3585,6 +3639,12 @@ define policer_add_del {
     u8 rate_type;
     u8 round_type;
     u8 type;
+    u8 conform_action_type;
+    u8 conform_dscp;
+    u8 exceed_action_type;
+    u8 exceed_dscp;
+    u8 violate_action_type;
+    u8 violate_dscp;
 };
 
 /** \brief Add/del policer response
@@ -3620,6 +3680,12 @@ define policer_dump {
     @param rate_type - rate type
     @param round_type - rounding type
     @param type - policer algorithm
+    @param conform_action_type - conform action type
+    @param conform_dscp - DSCP for conform mar-and-transmit action
+    @param exceed_action_type - exceed action type
+    @param exceed_dscp - DSCP for exceed mar-and-transmit action
+    @param violate_action_type - violate action type
+    @param violate_dscp - DSCP for violate mar-and-transmit action
     @param single_rate - 1 = single rate policer, 0 = two rate policer
     @param color_aware - for hierarchical policing
     @param scale - power-of-2 shift amount for lower rates
@@ -3642,6 +3708,12 @@ manual_java define policer_details {
     u8 rate_type;
     u8 round_type;
     u8 type;
+    u8 conform_action_type;
+    u8 conform_dscp;
+    u8 exceed_action_type;
+    u8 exceed_dscp;
+    u8 violate_action_type;
+    u8 violate_dscp;
     u8 single_rate;
     u8 color_aware;
     u32 scale;
@@ -3858,7 +3930,7 @@ define classify_table_ids {
 */
 manual_java define classify_table_ids_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
     u32 count;
     u32 ids[count];
 };
@@ -3884,7 +3956,7 @@ define classify_table_by_interface {
 */
 manual_java define classify_table_by_interface_reply {
     u32 context;
-    u32 retval;
+    i32 retval;
     u32 sw_if_index;
     u32 l2_table_id;
     u32 ip4_table_id;
@@ -3958,3 +4030,84 @@ manual_java define classify_session_details {
     u32 match_length;
     u8 match[match_length];
 };
+
+/** \brief Enable and configure IPFIX exporter process request
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param collector_address - address of IPFIX collector
+    @param collector_port - port of IPFIX IPFIX collector
+    @param src_address - address of IPFIX exporter
+    @param vrf_id - VRF / fib table ID
+    @param path_mtu - Path MTU between exporter and collector
+    @param template_interval - number of seconds after which to resend template
+*/
+define ipfix_enable {
+    u32 client_index;
+    u32 context;
+    u8 collector_address[16];
+    u16 collector_port;
+    u8 src_address[16];
+    u32 vrf_id;
+    u32 path_mtu;
+    u32 template_interval;
+};
+
+/** \brief Reply to IPFIX enable and configure request
+    @param context - sender context which was passed in the request
+*/
+define ipfix_enable_reply {
+    u32 context;
+    i32 retval;
+};
+
+/** \brief IPFIX dump request
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+*/
+define ipfix_dump {
+    u32 client_index;
+    u32 context;
+};
+
+/** \brief Reply to IPFIX dump request
+    @param context - sender context which was passed in the request
+    @param collector_address - address of IPFIX collector
+    @param collector_port - port of IPFIX IPFIX collector
+    @param src_address - address of IPFIX exporter
+    @param fib_index - fib table index
+    @param path_mtu - Path MTU between exporter and collector
+    @param template_interval - number of seconds after which to resend template
+*/
+manual_java define ipfix_details {
+    u32 context;
+    u8 collector_address[16];
+    u16 collector_port;
+    u8 src_address[16];
+    u32 fib_index;
+    u32 path_mtu;
+    u32 template_interval;
+};
+
+/** \brief Query relative index via node names
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param node_name - name of node to find relative index from
+    @param next_name - next node from node_name to find relative index of
+*/
+define get_next_index {
+    u32 client_index;
+    u32 context;
+    u8 node_name[64];
+    u8 next_name[64];
+};
+
+/** \brief Reply for get next node index
+    @param context - sender context which was passed in the request
+    @param retval - return value
+    @param next_index - index of the next_node
+*/
+define get_next_index_reply {
+    u32 context;
+    i32 retval;
+    u32 next_index;
+};