c_ipv62ip failed to set the output type of the cast to SMP_T_IPV4 even for a successful conversion.
This bug exists as of commit cc4d1716a2e72516c2505a6459a9ddbbfb186da2 which is the first commit adding this function. v1.6-dev4 is the first tag containing this commit, the fix should be backported to haproxy 1.6 and newer. --- src/sample.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sample.c b/src/sample.c index 115288539..04cec4fc8 100644 --- a/src/sample.c +++ b/src/sample.c @@ -531,7 +531,7 @@ static int c_ipv62ip(struct sample *smp) { if (!v6tov4(&smp->data.u.ipv4, &smp->data.u.ipv6)) return 0; - smp->data.type = SMP_T_IPV6; + smp->data.type = SMP_T_IPV4; return 1; } -- 2.15.1