VPP-358: Add IPv6 ND Event Notification and Termination
[vpp.git] / vpp / vpp-api / vpe.api
index fb0a414..0bfa2fa 100644 (file)
@@ -2803,7 +2803,9 @@ define lisp_locator_set_dump
 /** \brief Dump lisp eid-table
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
-    @param locator_set_index - index of locator_set
+    @param locator_set_index - index of locator_set, if ~0 then the mapping
+                                is negative
+    @param action - negative map request action
     @param is_local - local if non-zero, else remote
     @param eid_type:
       0 : ipv4
@@ -2820,6 +2822,7 @@ define lisp_eid_table_details
 {
   u32 context;
   u32 locator_set_index;
+  u8 action;
   u8 is_local;
   u8 eid_type;
   u32 vni;
@@ -2860,25 +2863,27 @@ define lisp_eid_table_dump
   u8 filter;
 };
 
-/** \brief Shows relationship between vni and vrf
-    @param vrf - VRF index
+/** \brief Shows relationship between vni and vrf/bd
+    @param dp_table - VRF index or bridge domain index
     @param vni - vitual network instance
   */
 define lisp_eid_table_map_details
 {
   u32 context;
   u32 vni;
-  u32 vrf;
+  u32 dp_table;
 };
 
 /** \brief Request for lisp_eid_table_map_details
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
+    @param is_l2 - if set dump vni/bd mappings else vni/vrf
  */
 define lisp_eid_table_map_dump
 {
   u32 client_index;
   u32 context;
+  u8 is_l2;
 };
 
 /** \brief Dumps all VNIs used in mappings
@@ -3066,6 +3071,7 @@ define want_ip4_arp_events_reply
     @param pid - client pid registered to receive notification
     @param sw_if_index - interface which received ARP packet
     @param new_mac - the new mac address 
+    @param mac_ip - 0: resolution event, 1: mac/ip binding in bd
 */
 define ip4_arp_event
 {
@@ -3075,8 +3081,55 @@ define ip4_arp_event
   u32 pid;
   u32 sw_if_index;
   u8 new_mac[6];
+  u8 mac_ip;
+};
+
+/** \brief Register for ip6 nd resolution events
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param enable_disable - 1 => register for events, 0 => cancel registration
+    @param pid - sender's pid
+    @param address - the exact ip6 address of interest
+*/
+define want_ip6_nd_events
+{
+  u32 client_index;
+  u32 context;
+  u8 enable_disable;
+  u32 pid;
+  u8 address[16];
+};
+
+/** \brief Reply for ip6 nd resolution events registration
+    @param context - returned sender context, to match reply w/ request
+    @param retval - return code
+*/
+define want_ip6_nd_events_reply
+{
+  u32 context;
+  i32 retval;
 };
 
+/** \brief Tell client about an ip6 nd resolution or mac/ip event
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param pid - client pid registered to receive notification
+    @param sw_if_index - interface which received ARP packet
+    @param address - the exact ip6 address of interest
+    @param new_mac - the new mac address 
+    @param mac_ip - 0: resolution event, 1: mac/ip binding in bd
+*/
+define ip6_nd_event
+{
+  u32 client_index;
+  u32 context;
+  u32 pid;
+  u32 sw_if_index;
+  u8 address[16];
+  u8 new_mac[6];
+  u8 mac_ip;
+};
+    
 /** \brief L2 bridge domain add or delete request
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request
@@ -4826,3 +4879,23 @@ define ipsec_gre_tunnel_details {
     u8 src_address[4];
     u8 dst_address[4];
 };
+
+/** \brief Delete sub interface request
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param sw_if_index - sw index of the interface that was created by create_subif
+*/
+define delete_subif {
+  u32 client_index;
+  u32 context;
+  u32 sw_if_index;
+};
+
+/** \brief Delete sub interface response
+    @param context - sender context, to match reply w/ request
+    @param retval - return code for the request
+*/
+define delete_subif_reply {
+  u32 context;
+  i32 retval;
+};