From 99cb335ac1209d5bb7ede754f59d7df898ae0e81 Mon Sep 17 00:00:00 2001 From: Chris Luke Date: Tue, 26 Apr 2016 10:49:53 -0400 Subject: VXLAN over IPv6. Refactors the VXLAN node to work with both IPv4 and IPv6 transports. There is a discussion thread for this change at https://lists.fd.io/pipermail/vpp-dev/2016-March/000279.html Note that this changes the binary configuration API to support both address families; each address uses the same memory for either address type and a flag to indicate which is in use. This also includes changes to the Java API to support both address families. The CLI and VAT syntax remains unchanged; the code detects whether an IPv4 or an IPv6 address was given. Configuration examples: IPv4 CLI: create vxlan tunnel src 192.168.1.1 dst 192.168.1.2 vni 10 encap-vrf-id 0 decap-next l2 IPv6 CLI: create vxlan tunnel src 2620:124:9000::1 dst 2620:124:9000::2 vni 16 encap-vrf-id 0 decap-next l2 IPv4 VAT: vxlan_add_del_tunnel src 192.168.1.1 dst 192.168.1.2 vni 10 encap-vrf-id 0 decap-next l2 IPv6 VAT: vxlan_add_del_tunnel src 2620:124:9000::1 dst 2620:124:9000::2 vni 16 encap-vrf-id 0 decap-next l2 TODO: The encap path is not as optimal as it could be. Change-Id: I87be8bf0501e0c9cd7e401be4542bb599f1b6e47 Signed-off-by: Chris Luke --- vpp-api/java/japi/vppjni.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'vpp-api/java/japi/vppjni.h') diff --git a/vpp-api/java/japi/vppjni.h b/vpp-api/java/japi/vppjni.h index bd0683ae2c5..bc738367bcf 100644 --- a/vpp-api/java/japi/vppjni.h +++ b/vpp-api/java/japi/vppjni.h @@ -124,11 +124,12 @@ typedef struct { } sw_interface_stats_t; typedef struct { - u32 src_address; - u32 dst_address; + u8 src_address[16]; + u8 dst_address[16]; u32 encap_vrf_id; u32 vni; u32 decap_next_index; + u8 is_ipv6; } vxlan_tunnel_details_t; -- cgit 1.2.3-korg