|
vnet_api_error_t | bfd_udp_set_echo_source (u32 sw_if_index) |
| set echo-source interface More...
|
|
vnet_api_error_t | bfd_udp_del_echo_source (u32 sw_if_index) |
|
int | bfd_udp_is_echo_available (bfd_transport_e transport) |
| check if the bfd udp layer is echo-capable at this time More...
|
|
static u16 | bfd_udp_bs_idx_to_sport (u32 bs_idx) |
|
int | bfd_udp_get_echo_src_ip4 (ip4_address_t *addr) |
|
int | bfd_udp_get_echo_src_ip6 (ip6_address_t *addr) |
|
void | bfd_udp_get_echo_source (int *is_set, u32 *sw_if_index, int *have_usable_ip4, ip4_address_t *ip4, int *have_usable_ip6, ip6_address_t *ip6) |
| get echo source information - used by CLI More...
|
|
int | bfd_add_udp4_transport (vlib_main_t *vm, u32 bi, const bfd_session_t *bs, int is_echo) |
|
int | bfd_add_udp6_transport (vlib_main_t *vm, u32 bi, const bfd_session_t *bs, int is_echo) |
|
static void | bfd_create_frame_to_next_node (vlib_main_t *vm, u32 bi, u32 next_node) |
|
int | bfd_udp_calc_next_node (const struct bfd_session_s *bs, u32 *next_node) |
|
int | bfd_transport_udp4 (vlib_main_t *vm, u32 bi, const struct bfd_session_s *bs) |
| transport packet over udpv4 More...
|
|
int | bfd_transport_udp6 (vlib_main_t *vm, u32 bi, const struct bfd_session_s *bs) |
| transport packet over udpv6 More...
|
|
static bfd_session_t * | bfd_lookup_session (bfd_udp_main_t *bum, const bfd_udp_key_t *key) |
|
static void | bfd_udp_key_init (bfd_udp_key_t *key, u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr) |
|
static vnet_api_error_t | bfd_udp_add_session_internal (bfd_udp_main_t *bum, u32 sw_if_index, u32 desired_min_tx_usec, u32 required_min_rx_usec, u8 detect_mult, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, bfd_session_t **bs_out) |
|
static vnet_api_error_t | bfd_udp_validate_api_input (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr) |
|
static vnet_api_error_t | bfd_udp_find_session_by_api_input (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, bfd_session_t **bs_out) |
|
static vnet_api_error_t | bfd_api_verify_common (u32 sw_if_index, u32 desired_min_tx_usec, u32 required_min_rx_usec, u8 detect_mult, const ip46_address_t *local_addr, const ip46_address_t *peer_addr) |
|
static void | bfd_udp_del_session_internal (bfd_session_t *bs) |
|
vnet_api_error_t | bfd_udp_add_session (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, u32 desired_min_tx_usec, u32 required_min_rx_usec, u8 detect_mult, u8 is_authenticated, u32 conf_key_id, u8 bfd_key_id) |
| create a new bfd session More...
|
|
vnet_api_error_t | bfd_udp_mod_session (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, u32 desired_min_tx_usec, u32 required_min_rx_usec, u8 detect_mult) |
| modify existing session More...
|
|
vnet_api_error_t | bfd_udp_del_session (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr) |
| delete existing session More...
|
|
vnet_api_error_t | bfd_udp_session_set_flags (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, u8 admin_up_down) |
| set session admin down/up More...
|
|
vnet_api_error_t | bfd_udp_auth_activate (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, u32 conf_key_id, u8 key_id, u8 is_delayed) |
| activate authentication for existing session More...
|
|
vnet_api_error_t | bfd_udp_auth_deactivate (u32 sw_if_index, const ip46_address_t *local_addr, const ip46_address_t *peer_addr, u8 is_delayed) |
| deactivate authentication for existing session More...
|
|
static void | bfd_udp4_find_headers (vlib_buffer_t *b, ip4_header_t **ip4, udp_header_t **udp) |
|
static bfd_udp_error_t | bfd_udp4_verify_transport (const ip4_header_t *ip4, const udp_header_t *udp, const bfd_session_t *bs) |
|
static void | bfd_rpc_update_session_cb (const bfd_rpc_update_t *a) |
|
static void | bfd_rpc_update_session (u32 bs_idx, const bfd_pkt_t *pkt) |
|
static bfd_udp_error_t | bfd_udp4_scan (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_buffer_t *b, bfd_session_t **bs_out) |
|
static void | bfd_udp6_find_headers (vlib_buffer_t *b, ip6_header_t **ip6, udp_header_t **udp) |
|
static bfd_udp_error_t | bfd_udp6_verify_transport (const ip6_header_t *ip6, const udp_header_t *udp, const bfd_session_t *bs) |
|
static bfd_udp_error_t | bfd_udp6_scan (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_buffer_t *b, bfd_session_t **bs_out) |
|
static uword | bfd_udp_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f, int is_ipv6) |
|
static uword | bfd_udp4_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f) |
|
static uword | bfd_udp6_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f) |
|
static uword | bfd_udp_echo_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f, int is_ipv6) |
|
static uword | bfd_udp_echo4_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f) |
|
u8 * | bfd_echo_input_format_trace (u8 *s, va_list *args) |
|
static uword | bfd_udp_echo6_input (vlib_main_t *vm, vlib_node_runtime_t *rt, vlib_frame_t *f) |
|
static clib_error_t * | bfd_udp_sw_if_add_del (vnet_main_t *vnm, u32 sw_if_index, u32 is_create) |
|
| VNET_SW_INTERFACE_ADD_DEL_FUNCTION (bfd_udp_sw_if_add_del) |
|
static clib_error_t * | bfd_udp_init (vlib_main_t *vm) |
|
BFD UDP transport layer implementation.
Definition in file bfd_udp.c.