Go to the source code of this file.
|
static u32 | bd_is_valid (l2_bridge_domain_t *bd_config) |
|
void | bd_validate (l2_bridge_domain_t *bd_config) |
| Init bridge domain if not done already. More...
|
|
void | bd_add_member (l2_bridge_domain_t *bd_config, l2_flood_member_t *member) |
|
u32 | bd_remove_member (l2_bridge_domain_t *bd_config, u32 sw_if_index) |
|
u32 | bd_set_flags (vlib_main_t *vm, u32 bd_index, bd_flags_t flags, u32 enable) |
| Set the learn/forward/flood flags for the bridge domain. More...
|
|
void | bd_set_mac_age (vlib_main_t *vm, u32 bd_index, u8 age) |
| Set the mac age for the bridge domain. More...
|
|
int | bd_add_del (l2_bridge_domain_add_del_args_t *args) |
|
u32 | bd_find_index (bd_main_t *bdm, u32 bd_id) |
| Get a bridge domain. More...
|
|
u32 | bd_add_bd_index (bd_main_t *bdm, u32 bd_id) |
| Create a bridge domain. More...
|
|
static u32 | bd_find_or_add_bd_index (bd_main_t *bdm, u32 bd_id) |
| Get or create a bridge domain. More...
|
|
u32 | bd_add_del_ip_mac (u32 bd_index, ip46_type_t type, const ip46_address_t *ip_addr, const mac_address_t *mac, u8 is_add) |
| Add/delete IP address to MAC address mapping. More...
|
|
void | bd_flush_ip_mac (u32 bd_index) |
| Flush IP address to MAC address mapping tables in a BD. More...
|
|
#define L2_BD_ID_MAX ((1<<24)-1) |
#define L2_FLOOD_MEMBER_BVI 1 |
#define L2_FLOOD_MEMBER_NORMAL 0 |
Enumerator |
---|
L2_NONE |
|
L2_LEARN |
|
L2_FWD |
|
L2_FLOOD |
|
L2_UU_FLOOD |
|
L2_ARP_TERM |
|
L2_ARP_UFWD |
|
Definition at line 148 of file l2_bd.h.
Enumerator |
---|
L2_BD_PORT_TYPE_NORMAL |
|
L2_BD_PORT_TYPE_BVI |
|
L2_BD_PORT_TYPE_UU_FWD |
|
Definition at line 26 of file l2_bd.h.
Create a bridge domain.
Create a bridge domain with the given bridge domain ID
- Parameters
-
- Returns
- The bridge domain index in
l2input_main->l2_bridge_domain_t
vector.
Definition at line 79 of file l2_bd.c.
Add/delete IP address to MAC address mapping.
The clib hash implementation stores uword entries in the hash table. The hash table mac_by_ip4 is keyed via IP4 address and store the 6-byte MAC address directly in the hash table entry uword.
- Warning
- This only works for 64-bit processor with 8-byte uword; which means this code WILL NOT WORK for a 32-bit processor with 4-byte uword.
Definition at line 812 of file l2_bd.c.
Get a bridge domain.
Get a bridge domain with the given bridge domain ID.
- Parameters
-
bdm | bd_main pointer. |
bd_id | The bridge domain ID |
- Returns
- The bridge domain index in
l2input_main->l2_bridge_domain_t
vector.
Definition at line 70 of file l2_bd.c.
Get or create a bridge domain.
Get a bridge domain with the given bridge domain ID, if one exists, otherwise create one with the given ID, or the first unused ID if the given ID is ~0..
- Parameters
-
bdm | bd_main pointer. |
bd_id | The bridge domain ID |
- Returns
- The bridge domain index in
l2input_main->l2_bridge_domain_t
vector.
Definition at line 196 of file l2_bd.h.
void bd_flush_ip_mac |
( |
u32 |
bd_index | ) |
|
Flush IP address to MAC address mapping tables in a BD.
Definition at line 889 of file l2_bd.c.
Set the learn/forward/flood flags for the bridge domain.
Return 0 if ok, non-zero if for an error.
Definition at line 252 of file l2_bd.c.
Set the mac age for the bridge domain.
Definition at line 300 of file l2_bd.c.
Init bridge domain if not done already.
For feature bitmap, set all bits except ARP termination
Definition at line 51 of file l2_bd.c.