FD.io VPP  v17.01.1-3-gc6833f8
Vector Packet Processing
bfd_protocol.h File Reference

BFD protocol declarations. More...

+ Include dependency graph for bfd_protocol.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define foreach_bfd_diag_code(F)
 
#define BFD_DIAG_CODE_NAME(t)   BFD_DIAG_CODE_##t
 
#define F(n, t, s)   BFD_DIAG_CODE_NAME (t) = n,
 
#define foreach_bfd_state(F)
 
#define BFD_STATE_NAME(t)   BFD_STATE_##t
 
#define F(n, t, s)   BFD_STATE_NAME (t) = n,
 

Enumerations

enum  bfd_diag_code_e { foreach_bfd_diag_code =(F) }
 
enum  bfd_state_e { foreach_bfd_state =(F) }
 

Functions

typedef CLIB_PACKED (struct{u8 type;u8 len;u8 data[0];}) bfd_auth_t
 
typedef CLIB_PACKED (struct{struct{u8 vers_diag;u8 sta_flags;u8 detect_mult;u8 length;}head;u32 my_disc;u32 your_disc;u32 des_min_tx;u32 req_min_rx;u32 req_min_echo_rx;}) bfd_pkt_t
 
typedef CLIB_PACKED (struct{bfd_pkt_t pkt;bfd_auth_t auth;}) bfd_pkt_with_auth_t
 
u8 bfd_pkt_get_version (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_version (bfd_pkt_t *pkt, int version)
 
u8 bfd_pkt_get_diag_code (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_diag_code (bfd_pkt_t *pkt, int value)
 
u8 bfd_pkt_get_state (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_state (bfd_pkt_t *pkt, int value)
 
u8 bfd_pkt_get_poll (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_final (bfd_pkt_t *pkt)
 
u8 bfd_pkt_get_final (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_poll (bfd_pkt_t *pkt)
 
u8 bfd_pkt_get_control_plane_independent (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_control_plane_independent (bfd_pkt_t *pkt)
 
u8 bfd_pkt_get_auth_present (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_auth_present (bfd_pkt_t *pkt)
 
u8 bfd_pkt_get_demand (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_demand (bfd_pkt_t *pkt)
 
u8 bfd_pkt_get_multipoint (const bfd_pkt_t *pkt)
 
void bfd_pkt_set_multipoint (bfd_pkt_t *pkt)
 
const char * bfd_diag_code_string (bfd_diag_code_e diag)
 
const char * bfd_state_string (bfd_state_e state)
 

Detailed Description

BFD protocol declarations.

Definition in file bfd_protocol.h.

Macro Definition Documentation

#define BFD_DIAG_CODE_NAME (   t)    BFD_DIAG_CODE_##t

Definition at line 117 of file bfd_protocol.h.

#define BFD_STATE_NAME (   t)    BFD_STATE_##t

Definition at line 135 of file bfd_protocol.h.

#define F (   n,
  t,
 
)    BFD_DIAG_CODE_NAME (t) = n,

Definition at line 139 of file bfd_protocol.h.

#define F (   n,
  t,
 
)    BFD_STATE_NAME (t) = n,

Definition at line 139 of file bfd_protocol.h.

#define foreach_bfd_diag_code (   F)
Value:
F (0, no_diag, "No Diagnostic") \
F (1, det_time_exp, "Control Detection Time Expired") \
F (2, echo_failed, "Echo Function Failed") \
F (3, neighbor_sig_down, "Neighbor Signaled Session Down") \
F (4, fwd_plain_reset, "Forwarding Plane Reset") \
F (5, path_down, "Path Down") \
F (6, concat_path_down, "Concatenated Path Down") \
F (7, admin_down, "Administratively Down") \
F (8, reverse_concat_path_down, "Reverse Concatenated Path Down")
#define F(n, t, s)
Definition: bfd_protocol.h:139

Definition at line 106 of file bfd_protocol.h.

#define foreach_bfd_state (   F)
Value:
F (0, admin_down, "AdminDown") \
F (1, down, "Down") \
F (2, init, "Init") \
F (3, up, "Up")
#define F(n, t, s)
Definition: bfd_protocol.h:139

Definition at line 129 of file bfd_protocol.h.

Enumeration Type Documentation

Enumerator
foreach_bfd_diag_code 

Definition at line 119 of file bfd_protocol.h.

Enumerator
foreach_bfd_state 

Definition at line 137 of file bfd_protocol.h.

Function Documentation

const char* bfd_diag_code_string ( bfd_diag_code_e  diag)

Definition at line 306 of file bfd_main.c.

+ Here is the caller graph for this function:

u8 bfd_pkt_get_auth_present ( const bfd_pkt_t *  pkt)

Definition at line 55 of file bfd_protocol.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 bfd_pkt_get_control_plane_independent ( const bfd_pkt_t *  pkt)

Definition at line 48 of file bfd_protocol.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 bfd_pkt_get_demand ( const bfd_pkt_t *  pkt)

Definition at line 62 of file bfd_protocol.c.

+ Here is the caller graph for this function:

u8 bfd_pkt_get_diag_code ( const bfd_pkt_t *  pkt)

Definition at line 14 of file bfd_protocol.c.

+ Here is the caller graph for this function:

u8 bfd_pkt_get_final ( const bfd_pkt_t *  pkt)

Definition at line 42 of file bfd_protocol.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 bfd_pkt_get_multipoint ( const bfd_pkt_t *  pkt)

Definition at line 69 of file bfd_protocol.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8 bfd_pkt_get_poll ( const bfd_pkt_t *  pkt)

Definition at line 35 of file bfd_protocol.c.

+ Here is the caller graph for this function:

u8 bfd_pkt_get_state ( const bfd_pkt_t *  pkt)

Definition at line 25 of file bfd_protocol.c.

+ Here is the caller graph for this function:

u8 bfd_pkt_get_version ( const bfd_pkt_t *  pkt)

Definition at line 3 of file bfd_protocol.c.

+ Here is the caller graph for this function:

void bfd_pkt_set_auth_present ( bfd_pkt_t *  pkt)
void bfd_pkt_set_control_plane_independent ( bfd_pkt_t *  pkt)
void bfd_pkt_set_demand ( bfd_pkt_t *  pkt)

Definition at line 67 of file bfd_protocol.c.

+ Here is the caller graph for this function:

void bfd_pkt_set_diag_code ( bfd_pkt_t *  pkt,
int  value 
)

Definition at line 19 of file bfd_protocol.c.

+ Here is the caller graph for this function:

void bfd_pkt_set_final ( bfd_pkt_t *  pkt)

Definition at line 40 of file bfd_protocol.c.

+ Here is the caller graph for this function:

void bfd_pkt_set_multipoint ( bfd_pkt_t *  pkt)
void bfd_pkt_set_poll ( bfd_pkt_t *  pkt)
void bfd_pkt_set_state ( bfd_pkt_t *  pkt,
int  value 
)

Definition at line 30 of file bfd_protocol.c.

+ Here is the caller graph for this function:

void bfd_pkt_set_version ( bfd_pkt_t *  pkt,
int  version 
)

Definition at line 8 of file bfd_protocol.c.

+ Here is the caller graph for this function:

const char* bfd_state_string ( bfd_state_e  state)

Definition at line 319 of file bfd_main.c.

+ Here is the caller graph for this function:

typedef CLIB_PACKED ( struct{u8 type;u8 len;u8 data[0];}  )
typedef CLIB_PACKED ( struct{struct{u8 vers_diag;u8 sta_flags;u8 detect_mult;u8 length;}head;u32 my_disc;u32 your_disc;u32 des_min_tx;u32 req_min_rx;u32 req_min_echo_rx;}  )
typedef CLIB_PACKED ( struct{bfd_pkt_t pkt;bfd_auth_t auth;}  )