+static_always_inline u8
+bd_feature_arp_ufwd (l2_bridge_domain_t * bd_config)
+{
+ return ((bd_config->feature_bitmap & L2INPUT_FEAT_ARP_UFWD) ==
+ L2INPUT_FEAT_ARP_UFWD);
+}
+
+static inline bool
+l2_input_is_bridge (const l2_input_config_t * input)
+{
+ return (input->flags & L2_INPUT_FLAG_BRIDGE);
+}
+
+static inline bool
+l2_input_is_xconnect (const l2_input_config_t * input)
+{
+ return (input->flags & L2_INPUT_FLAG_XCONNECT);
+}
+
+static inline bool
+l2_input_is_bvi (const l2_input_config_t * input)
+{
+ return (input->flags & L2_INPUT_FLAG_BVI);
+}
+
+static_always_inline u8
+l2_input_seq_num (u32 sw_if_index)
+{
+ l2_input_config_t *input;
+
+ input = vec_elt_at_index (l2input_main.configs, sw_if_index);
+
+ return input->seq_num;
+}
+
+