aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet
diff options
context:
space:
mode:
authorOle Troan <ot@cisco.com>2018-03-01 14:53:12 +0100
committerNeale Ranns <nranns@cisco.com>2018-03-05 16:44:28 +0000
commitf7b7fa53b7eaec81d8c00c1023fb7d01f1f9761f (patch)
tree4367f86fbb2c335c0e6d893a3eb6981ea7a63927 /src/vnet
parentf313b747ad4313a5cadfdb6aa7eb66ce8bf7958f (diff)
API: Add service definitions for events and singleton messages.
Change-Id: I7de987c30b263d43521e6280c5273f30b5f6e11c Signed-off-by: Ole Troan <ot@cisco.com>
Diffstat (limited to 'src/vnet')
-rw-r--r--src/vnet/dhcp/dhcp.api4
-rw-r--r--src/vnet/interface.api65
-rw-r--r--src/vnet/ip/ip.api10
-rw-r--r--src/vnet/l2/l2.api5
4 files changed, 24 insertions, 60 deletions
diff --git a/src/vnet/dhcp/dhcp.api b/src/vnet/dhcp/dhcp.api
index 721a1be3547..975aa6ee9e7 100644
--- a/src/vnet/dhcp/dhcp.api
+++ b/src/vnet/dhcp/dhcp.api
@@ -109,6 +109,10 @@ define dhcp_compl_event
u8 host_mac[6];
};
+service {
+ rpc dhcp_client_config returns dhcp_client_config_reply events dhcp_compl_event;
+};
+
/** \brief Dump DHCP proxy table
@param client_index - opaque cookie to identify the sender
@param True for IPv6 proxy table
diff --git a/src/vnet/interface.api b/src/vnet/interface.api
index a8733d1854f..a5a9184f0bb 100644
--- a/src/vnet/interface.api
+++ b/src/vnet/interface.api
@@ -1,5 +1,10 @@
option version = "1.0.0";
+service {
+ rpc want_interface_events returns want_interface_events_reply
+ events sw_interface_event;
+};
+
/** \brief Set flags on the interface
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
@@ -273,66 +278,6 @@ typeonly manual_print manual_endian define vnet_simple_counter
u64 rx_mpls;
};
-/** \brief Simple stats counters structure
- @param vnet_counter_type- such as ip4, ip6, punts, etc
- @param first_sw_if_index - first sw index in block of index, counts
- @param count - number of counters, equal to the number of interfaces in
- this stats block
- @param data - contiguous block of u64 counters
-
- vnet_counter_type defined in enums - plural - in vnet/interface.h
-*/
-manual_print manual_endian define vnet_interface_simple_counters
-{
- u8 vnet_counter_type;
- u32 first_sw_if_index;
- u32 count;
- u64 data[count];
-};
-
-/** \brief Combined stats counters structure
- @param vnet_counter_type- such as ip4, ip6, punts, etc
- @param first_sw_if_index - first sw index in block of index, counts
- @param count - number of counters, equal to the number of interfaces in
- this stats block
- @param data - contiguous block of vlib_counter_t structures
-
- vnet_counter_type defined in enums - plural - in vnet/interface.h
-*/
-manual_print manual_endian define vnet_interface_combined_counters
-{
- u8 vnet_counter_type;
- u32 first_sw_if_index;
- u32 count;
- vl_api_vlib_counter_t data[count];
-};
-
-
-/** \brief Simple per interface stats counters structure
- @param count - number of elements in message
- @param timestamp - u32 vlib timestamp for control plane
- @param data[count] - vl_api_vnet_simple_counter_t
-
-*/
-manual_print manual_endian define vnet_per_interface_simple_counters
-{
- u32 count;
- u32 timestamp;
- vl_api_vnet_simple_counter_t data[count];
-};
-
-/** \brief Combined stats counters structure per interface
- @param count - number of elements in message
- @param timestamp - u32 vlib timestamp for control plane
- @param data[count] - vl_api_vnet_combined_counter_t
-*/
-manual_print manual_endian define vnet_per_interface_combined_counters
-{
- u32 count;
- u32 timestamp;
- vl_api_vnet_combined_counter_t data[count];
-};
-
/** \brief Set unnumbered interface add / del request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
diff --git a/src/vnet/ip/ip.api b/src/vnet/ip/ip.api
index 6ed5a9d6bdb..b94d6d748b2 100644
--- a/src/vnet/ip/ip.api
+++ b/src/vnet/ip/ip.api
@@ -686,6 +686,11 @@ define ip4_arp_event
u8 mac_ip;
};
+service {
+ rpc want_ip4_arp_events returns want_ip4_arp_events_reply
+ events ip4_arp_event;
+};
+
/** \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
@@ -720,6 +725,11 @@ define ip6_nd_event
u8 mac_ip;
};
+service {
+ rpc want_ip6_nd_events returns want_ip6_nd_events_reply
+ events ip6_nd_event;
+};
+
/** \brief Proxy ARP add / del request
@param client_index - opaque cookie to identify the sender
@param context - sender context, to match reply w/ request
diff --git a/src/vnet/l2/l2.api b/src/vnet/l2/l2.api
index 5102783bcb4..3fb6de0d073 100644
--- a/src/vnet/l2/l2.api
+++ b/src/vnet/l2/l2.api
@@ -182,6 +182,11 @@ define l2_macs_event
vl_api_mac_entry_t mac[n_macs];
};
+service {
+ rpc want_l2_macs_events returns want_l2_macs_events_reply
+ events l2_macs_event;
+};
+
/** \brief Set interface L2 flags (such as L2_LEARN, L2_FWD,
L2_FLOOD, L2_UU_FLOOD, or L2_ARP_TERM bits). This can be used
to disable one or more of the features represented by the