summaryrefslogtreecommitdiffstats
path: root/src/vnet/ip/ip.api
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/ip/ip.api')
-rw-r--r--src/vnet/ip/ip.api67
1 files changed, 53 insertions, 14 deletions
diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api
index 69c7b88f2e6..b37530ef955 100644
--- a/src/vnet/ip/ip.api
+++ b/src/vnet/ip/ip.api
@@ -65,6 +65,59 @@ define ip_table_dump
u32 context;
};
+/** \brief IP table replace being
+
+ The use-case is that, for some unspecified reason, the control plane
+ has a very different set of entries it wants in the table than VPP
+ currently has. The CP would thus like to 'replace' VPP's current table
+ only by specifying what the new set of entries shall be, i.e. it is not
+ going to delete anything that already eixts.
+ the CP delcartes the start of this procedure with this begin_replace
+ API Call, and when it has populated all the entries it wants, it calls
+ the below end_replace API. From this point on it is of coursce free
+ to add and delete entries as usual.
+ The underlying mechanism by which VPP implements this replace is
+ purposefully left unspecified.
+
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param table - The table to resync
+*/
+autoreply define ip_table_replace_begin
+{
+ u32 client_index;
+ u32 context;
+ vl_api_ip_table_t table;
+};
+
+/** \brief IP table replace end
+
+ see replace start/
+
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param table - The table that has converged
+*/
+autoreply define ip_table_replace_end
+{
+ u32 client_index;
+ u32 context;
+ vl_api_ip_table_t table;
+};
+
+/** \brief IP table flush
+ Flush a table of all routes
+ @param client_index - opaque cookie to identify the sender
+ @param context - sender context, to match reply w/ request
+ @param table - The table to flush
+*/
+autoreply define ip_table_flush
+{
+ u32 client_index;
+ u32 context;
+ vl_api_ip_table_t table;
+};
+
/** \brief IP FIB table response
@param context - sender context
@param table - description of the table
@@ -957,20 +1010,6 @@ define proxy_arp_intfc_details
u32 sw_if_index;
};
-/** \brief Reset fib table request
- @param client_index - opaque cookie to identify the sender
- @param context - sender context, to match reply w/ request
- @param vrf_id - vrf/table id of the fib table to reset
- @param is_ipv6 - an ipv6 fib to reset if non-zero, else ipv4
-*/
-autoreply define reset_fib
-{
- u32 client_index;
- u32 context;
- u32 vrf_id;
- u8 is_ipv6;
-};
-
/** \brief Set max allowed ARP or ip6 neighbor entries request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request