FD.io VPP
v20.09-64-g4f7b92f0a
Vector Packet Processing
|
Go to the source code of this file.
Data Structures | |
struct | fib_entry_delegate_track_t_ |
State for FIB entry tracking. More... | |
struct | fib_entry_delegate_t_ |
A Delagate is a means to implmenet the Delagation design pattern; the extension of an objects functionality through the composition of, and delgation to, other objects. More... | |
Macros | |
#define | FOR_EACH_DELEGATE_CHAIN(_entry, _fdt, _fed, _body) |
Typedefs | |
typedef enum fib_entry_delegate_type_t_ | fib_entry_delegate_type_t |
Delegate types. More... | |
typedef enum fib_bfd_state_t_ | fib_bfd_state_t |
Distillation of the BFD session states into a go/no-go for using the associated tracked FIB entry. More... | |
typedef struct fib_entry_delegate_track_t_ | fib_entry_delegate_track_t |
State for FIB entry tracking. More... | |
typedef struct fib_entry_delegate_t_ | fib_entry_delegate_t |
A Delagate is a means to implmenet the Delagation design pattern; the extension of an objects functionality through the composition of, and delgation to, other objects. More... | |
Enumerations | |
enum | fib_entry_delegate_type_t_ { FIB_ENTRY_DELEGATE_CHAIN_UNICAST_IP4 = FIB_FORW_CHAIN_TYPE_UNICAST_IP4, FIB_ENTRY_DELEGATE_CHAIN_UNICAST_IP6 = FIB_FORW_CHAIN_TYPE_UNICAST_IP6, FIB_ENTRY_DELEGATE_CHAIN_MPLS_EOS = FIB_FORW_CHAIN_TYPE_MPLS_EOS, FIB_ENTRY_DELEGATE_CHAIN_MPLS_NON_EOS = FIB_FORW_CHAIN_TYPE_MPLS_NON_EOS, FIB_ENTRY_DELEGATE_CHAIN_ETHERNET = FIB_FORW_CHAIN_TYPE_ETHERNET, FIB_ENTRY_DELEGATE_CHAIN_NSH = FIB_FORW_CHAIN_TYPE_NSH, FIB_ENTRY_DELEGATE_COVERED, FIB_ENTRY_DELEGATE_BFD, FIB_ENTRY_DELEGATE_TRACK, FIB_ENTRY_DELEGATE_ATTACHED_IMPORT, FIB_ENTRY_DELEGATE_ATTACHED_EXPORT } |
Delegate types. More... | |
enum | fib_bfd_state_t_ { FIB_BFD_STATE_UP, FIB_BFD_STATE_DOWN } |
Distillation of the BFD session states into a go/no-go for using the associated tracked FIB entry. More... | |
Functions | |
void | fib_entry_delegate_remove (fib_entry_t *fib_entry, fib_entry_delegate_type_t type) |
fib_entry_delegate_t * | fib_entry_delegate_find_or_add (fib_entry_t *fib_entry, fib_entry_delegate_type_t fdt) |
fib_entry_delegate_t * | fib_entry_delegate_find (const fib_entry_t *fib_entry, fib_entry_delegate_type_t type) |
fib_forward_chain_type_t | fib_entry_delegate_type_to_chain_type (fib_entry_delegate_type_t type) |
fib_entry_delegate_type_t | fib_entry_chain_type_to_delegate_type (fib_forward_chain_type_t type) |
u8 * | format_fib_entry_delegate (u8 *s, va_list *args) |
fib_node_index_t | fib_entry_delegate_get_index (const fib_entry_delegate_t *fed) |
fib_entry_delegate_t * | fib_entry_delegate_get (fib_node_index_t fedi) |
#define FOR_EACH_DELEGATE_CHAIN | ( | _entry, | |
_fdt, | |||
_fed, | |||
_body | |||
) |
Definition at line 61 of file fib_entry_delegate.h.
typedef enum fib_bfd_state_t_ fib_bfd_state_t |
Distillation of the BFD session states into a go/no-go for using the associated tracked FIB entry.
typedef struct fib_entry_delegate_t_ fib_entry_delegate_t |
A Delagate is a means to implmenet the Delagation design pattern; the extension of an objects functionality through the composition of, and delgation to, other objects.
These 'other' objects are delegates. Delagates are thus attached to other FIB objects to extend their functionality.
typedef struct fib_entry_delegate_track_t_ fib_entry_delegate_track_t |
State for FIB entry tracking.
typedef enum fib_entry_delegate_type_t_ fib_entry_delegate_type_t |
Delegate types.
enum fib_bfd_state_t_ |
Distillation of the BFD session states into a go/no-go for using the associated tracked FIB entry.
Enumerator | |
---|---|
FIB_BFD_STATE_UP | |
FIB_BFD_STATE_DOWN |
Definition at line 78 of file fib_entry_delegate.h.
Delegate types.
Definition at line 25 of file fib_entry_delegate.h.
fib_entry_delegate_type_t fib_entry_chain_type_to_delegate_type | ( | fib_forward_chain_type_t | type | ) |
fib_entry_delegate_t* fib_entry_delegate_find | ( | const fib_entry_t * | fib_entry, |
fib_entry_delegate_type_t | type | ||
) |
Definition at line 65 of file fib_entry_delegate.c.
fib_entry_delegate_t* fib_entry_delegate_find_or_add | ( | fib_entry_t * | fib_entry, |
fib_entry_delegate_type_t | fdt | ||
) |
Definition at line 118 of file fib_entry_delegate.c.
fib_entry_delegate_t* fib_entry_delegate_get | ( | fib_node_index_t | fedi | ) |
fib_node_index_t fib_entry_delegate_get_index | ( | const fib_entry_delegate_t * | fed | ) |
void fib_entry_delegate_remove | ( | fib_entry_t * | fib_entry, |
fib_entry_delegate_type_t | type | ||
) |
Definition at line 72 of file fib_entry_delegate.c.
fib_forward_chain_type_t fib_entry_delegate_type_to_chain_type | ( | fib_entry_delegate_type_t | type | ) |
Definition at line 296 of file fib_entry_delegate.c.