diff options
Diffstat (limited to 'src/plugins/gbp/gbp_bridge_domain.h')
-rw-r--r-- | src/plugins/gbp/gbp_bridge_domain.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/plugins/gbp/gbp_bridge_domain.h b/src/plugins/gbp/gbp_bridge_domain.h index dd2798fdafa..5bfa099f31d 100644 --- a/src/plugins/gbp/gbp_bridge_domain.h +++ b/src/plugins/gbp/gbp_bridge_domain.h @@ -46,6 +46,12 @@ typedef struct gbp_bridge_domain_t_ u32 gb_bd_index; /** + * Index of the Route-domain this BD is associated with. This is used as the + * 'scope' of the packets for contract matching. + */ + u32 gb_rdi; + + /** * Flags conttrolling behaviour */ gbp_bridge_domain_flags_t gb_flags; @@ -79,6 +85,7 @@ typedef struct gbp_bridge_domain_t_ } gbp_bridge_domain_t; extern int gbp_bridge_domain_add_and_lock (u32 bd_id, + u32 rd_id, gbp_bridge_domain_flags_t flags, u32 bvi_sw_if_index, u32 uu_fwd_sw_if_index, @@ -121,6 +128,14 @@ gbp_bridge_domain_get_by_bd_index (u32 bd_index) (gbp_bridge_domain_db.gbd_by_bd_index[bd_index])); } +extern gbp_scope_t *gbp_scope_by_bd_index; + +always_inline gbp_scope_t +gbp_bridge_domain_get_scope (u32 bd_index) +{ + return (gbp_scope_by_bd_index[bd_index]); +} + #endif /* |