X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fbfd%2Fbfd.api;h=9fdd5b728d4e2c38f6e652e399d2f5dd2fc83bf7;hb=aa6a29f6b87e917a05c7906a2eb8f039ec19b302;hp=2cdcfad3fc82a4812effb8da2e33d6fef222289e;hpb=738844871220f853629504f61c248f0c9402dc77;p=vpp.git diff --git a/src/vnet/bfd/bfd.api b/src/vnet/bfd/bfd.api index 2cdcfad3fc8..9fdd5b728d4 100644 --- a/src/vnet/bfd/bfd.api +++ b/src/vnet/bfd/bfd.api @@ -13,46 +13,70 @@ * limitations under the License. */ +option version = "2.0.0"; + +import "vnet/interface_types.api"; +import "vnet/ip/ip_types.api"; + +enum bfd_state { + BFD_STATE_API_ADMIN_DOWN = 0, + BFD_STATE_API_DOWN = 1, + BFD_STATE_API_INIT = 2, + BFD_STATE_API_UP = 3, +}; + /** \brief Set BFD echo source @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - interface to use as echo source */ -define bfd_udp_set_echo_source +autoreply define bfd_udp_set_echo_source { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; }; -/** \brief Set BFD feature response +/** \brief Delete BFD echo source + @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request - @param retval - return code for the request */ -define bfd_udp_set_echo_source_reply +autoreply define bfd_udp_del_echo_source { + u32 client_index; u32 context; - i32 retval; }; -/** \brief Delete BFD echo source +/** \brief Get BFD echo source @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request */ -define bfd_udp_del_echo_source +define bfd_udp_get_echo_source { u32 client_index; u32 context; }; -/** \brief Delete BFD echo source response +/** \brief Get BFD echo source reply @param context - sender context, to match reply w/ request - @param retval - return code for the request + @param retval - return code + @param sw_if_index - interface to use as echo source + @param is_set - non-zero if set + @param have_usable_ip4 - non-zero if have usable IPv4 address + @param ip4_addr - IPv4 address + @param have_usable_ip6 - non-zero if have usable IPv6 address + @param ip6_addr - IPv6 address */ -define bfd_udp_del_echo_source_reply +define bfd_udp_get_echo_source_reply { u32 context; i32 retval; + vl_api_interface_index_t sw_if_index; + bool is_set; + bool have_usable_ip4; + vl_api_ip4_address_t ip4_addr; + bool have_usable_ip6; + vl_api_ip6_address_t ip6_addr; }; /** \brief Add UDP BFD session on interface @@ -69,32 +93,21 @@ define bfd_udp_del_echo_source_reply @param bfd_key_id - key id sent out in BFD packets (if is_authenticated) @param conf_key_id - id of already configured key (if is_authenticated) */ -define bfd_udp_add +autoreply define bfd_udp_add { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u32 desired_min_tx; u32 required_min_rx; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; u8 detect_mult; - u8 is_authenticated; + bool is_authenticated; u8 bfd_key_id; u32 conf_key_id; }; -/** \brief Add UDP BFD session response - @param context - sender context, to match reply w/ request - @param retval - return code for the request -*/ -define bfd_udp_add_reply -{ - u32 context; - i32 retval; -}; - /** \brief Modify UDP BFD session on interface @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -106,29 +119,18 @@ define bfd_udp_add_reply @param is_ipv6 - local_addr, peer_addr are IPv6 if non-zero, otherwise IPv4 @param detect_mult - detect multiplier (# of packets missed before connection goes down) */ -define bfd_udp_mod +autoreply define bfd_udp_mod { u32 client_index; u32 context; - u32 sw_if_index; + vl_api_interface_index_t sw_if_index; u32 desired_min_tx; u32 required_min_rx; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; u8 detect_mult; }; -/** \brief Modify UDP BFD session response - @param context - sender context, to match reply w/ request - @param retval - return code for the request -*/ -define bfd_udp_mod_reply -{ - u32 context; - i32 retval; -}; - /** \brief Delete UDP BFD session on interface @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -137,24 +139,13 @@ define bfd_udp_mod_reply @param peer_addr - peer address @param is_ipv6 - local_addr, peer_addr are IPv6 if non-zero, otherwise IPv4 */ -define bfd_udp_del +autoreply define bfd_udp_del { u32 client_index; u32 context; - u32 sw_if_index; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; -}; - -/** \brief Delete UDP BFD session response - @param context - sender context, to match reply w/ request - @param retval - return code for the request -*/ -define bfd_udp_del_reply -{ - u32 context; - i32 retval; + vl_api_interface_index_t sw_if_index; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; }; /** \brief Get all BFD sessions @@ -184,12 +175,11 @@ define bfd_udp_session_dump define bfd_udp_session_details { u32 context; - u32 sw_if_index; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; - u8 state; - u8 is_authenticated; + vl_api_interface_index_t sw_if_index; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; + vl_api_bfd_state_t state; + bool is_authenticated; u8 bfd_key_id; u32 conf_key_id; u32 required_min_rx; @@ -204,27 +194,16 @@ define bfd_udp_session_details @param local_addr - local address @param peer_addr - peer address @param is_ipv6 - local_addr, peer_addr are IPv6 if non-zero, otherwise IPv4 - @param admin_up_down - set the admin state, 1 = up, 0 = down + @param flags - set the admin state, 1 = up, 0 = down */ -define bfd_udp_session_set_flags +autoreply define bfd_udp_session_set_flags { u32 client_index; u32 context; - u32 sw_if_index; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; - u8 admin_up_down; -}; - -/** \brief Reply to bfd_udp_session_set_flags - @param context - sender context which was passed in the request - @param retval - return code of the set flags request -*/ -define bfd_udp_session_set_flags_reply -{ - u32 context; - i32 retval; + vl_api_interface_index_t sw_if_index; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; + vl_api_if_status_flags_t flags; }; /** \brief Register for BFD events @@ -233,24 +212,14 @@ define bfd_udp_session_set_flags_reply @param enable_disable - 1 => register for events, 0 => cancel registration @param pid - sender's pid */ -define want_bfd_events +autoreply define want_bfd_events { u32 client_index; u32 context; - u32 enable_disable; + bool enable_disable; u32 pid; }; -/** \brief Reply for BFD events registration - @param context - returned sender context, to match reply w/ request - @param retval - return code -*/ -define want_bfd_events_reply -{ - u32 context; - i32 retval; -}; - /** \brief BFD UDP - add/replace key to configuration @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -259,7 +228,7 @@ define want_bfd_events_reply @param auth_type - authentication type (RFC 5880/4.1/Auth Type) @param key - key data */ -define bfd_auth_set_key +autoreply define bfd_auth_set_key { u32 client_index; u32 context; @@ -269,16 +238,6 @@ define bfd_auth_set_key u8 key[20]; }; -/** \brief BFD UDP - add/replace key reply - @param context - returned sender context, to match reply w/ request - @param retval - return code -*/ -define bfd_auth_set_key_reply -{ - u32 context; - i32 retval; -}; - /** \brief BFD UDP - delete key from configuration @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -286,23 +245,13 @@ define bfd_auth_set_key_reply @param key_len - length of key (must be non-zero) @param key - key data */ -define bfd_auth_del_key +autoreply define bfd_auth_del_key { u32 client_index; u32 context; u32 conf_key_id; }; -/** \brief BFD UDP - delete key reply - @param context - returned sender context, to match reply w/ request - @param retval - return code -*/ -define bfd_auth_del_key_reply -{ - u32 context; - i32 retval; -}; - /** \brief Get a list of configured authentication keys @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -338,29 +287,18 @@ define bfd_auth_keys_details @param bfd_key_id - key id sent out in BFD packets @param conf_key_id - id of already configured key */ -define bfd_udp_auth_activate +autoreply define bfd_udp_auth_activate { u32 client_index; u32 context; - u32 sw_if_index; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; - u8 is_delayed; + vl_api_interface_index_t sw_if_index; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; + bool is_delayed; u8 bfd_key_id; u32 conf_key_id; }; -/** \brief BFD UDP - activate/change authentication reply - @param context - returned sender context, to match reply w/ request - @param retval - return code -*/ -define bfd_udp_auth_activate_reply -{ - u32 context; - i32 retval; -}; - /** \brief BFD UDP - deactivate authentication @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @@ -370,25 +308,14 @@ define bfd_udp_auth_activate_reply @param is_ipv6 - local_addr, peer_addr are IPv6 if non-zero, otherwise IPv4 @param is_delayed - change is applied once peer applies the change (on first received non-authenticated packet) */ -define bfd_udp_auth_deactivate +autoreply define bfd_udp_auth_deactivate { u32 client_index; u32 context; - u32 sw_if_index; - u8 local_addr[16]; - u8 peer_addr[16]; - u8 is_ipv6; - u8 is_delayed; -}; - -/** \brief BFD UDP - deactivate authentication reply - @param context - returned sender context, to match reply w/ request - @param retval - return code -*/ -define bfd_udp_auth_deactivate_reply -{ - u32 context; - i32 retval; + vl_api_interface_index_t sw_if_index; + vl_api_address_t local_addr; + vl_api_address_t peer_addr; + bool is_delayed; }; /*