gbp: More unit tests
[vpp.git] / src / plugins / gbp / gbp_vxlan.h
index 7aa22e3..908abc2 100644 (file)
@@ -82,6 +82,11 @@ typedef struct gbp_vxlan_tunnel_t_
    * list of child vxlan-gbp tunnels built from this template
    */
   index_t *gt_tuns;
+
+  /**
+   * The source address to use for child tunnels
+   */
+  ip46_address_t gt_src;
 } gbp_vxlan_tunnel_t;
 
 /**
@@ -103,7 +108,9 @@ typedef enum gbp_vxlan_tunnel_type_t_
 } gbp_vxlan_tunnel_type_t;
 
 extern int gbp_vxlan_tunnel_add (u32 vni, gbp_vxlan_tunnel_layer_t layer,
-                                u32 bd_rd_id, u32 * sw_if_indexp);
+                                u32 bd_rd_id,
+                                const ip4_address_t * src,
+                                u32 * sw_if_indexp);
 extern int gbp_vxlan_tunnel_del (u32 vni);
 
 extern gbp_vxlan_tunnel_type_t gbp_vxlan_tunnel_get_type (u32 sw_if_index);
@@ -122,6 +129,7 @@ extern void gbp_vxlan_walk (gbp_vxlan_cb_t cb, void *ctx);
 extern u8 *format_gbp_vxlan_tunnel (u8 * s, va_list * args);
 extern u8 *format_gbp_vxlan_tunnel_layer (u8 * s, va_list * args);
 
+extern gbp_vxlan_tunnel_t *gbp_vxlan_tunnel_get (index_t gti);
 #endif
 
 /*