[dpdk-dev] [PATCH] testpmd: fix build on FreeBSD

Sergio Gonzalez Monroy sergio.gonzalez.monroy at intel.com
Mon Mar 21 10:13:25 CET 2016


On 21/03/2016 01:44, Marvin Liu wrote:
> Build log:
> /root/dpdk/app/test-pmd/cmdline.c:6687:45: error: no member named
> 's6_addr32' in 'struct in6_addr'
> 	rte_be_to_cpu_32(res->ip_value.addr.ipv6.s6_addr32[i]);
>
> This is caused by macro "s6_addr32" not defined on FreeBSD.
>
> Signed-off-by: Marvin Liu <yong.liu at intel.com>
>
> diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
> index 9d52b8c..51ad23b 100644
> --- a/app/test-pmd/cmdline.c
> +++ b/app/test-pmd/cmdline.c
> @@ -6684,7 +6684,11 @@ cmd_tunnel_filter_parsed(void *parsed_result,
>   		int i;
>   		for (i = 0; i < 4; i++) {
>   			tunnel_filter_conf.ip_addr.ipv6_addr[i] =
> +#ifdef RTE_EXEC_ENV_BSDAPP
> +			rte_be_to_cpu_32(res->ip_value.addr.ipv6.__u6_addr.__u6_addr32[i]);
> +#else
>   			rte_be_to_cpu_32(res->ip_value.addr.ipv6.s6_addr32[i]);
> +#endif

Why not always use .__u6_addr.__u6_addr32[i] and avoid ifdef?

Sergio

>   		}
>   		tunnel_filter_conf.ip_type = RTE_TUNNEL_IPTYPE_IPV6;
>   	}



More information about the dev mailing list