tree 0b074f652d4cd96108b2d16cab609498e498f456
parent b75d692ca6cc61a99e355203c21eaf2e39b3c3cd
author Thierry FOURNIER <tfournier@exceliance.fr> 1397478940 +0200
committer Willy Tarreau <w@1wt.eu> 1397492577 +0200
encoding latin1

BUG/MEDIUM: stick-table: fix IPv4-to-IPv6 conversion in src_* fetches

The function addr_to_stktable_key doesn't consider the expected
type of key. If the stick table key is based on IPv6 addresses
and the input is IPv4, the returned key is IPv4 adddress and his
length is 4 bytes, while is expected 16 bytes key.

This patch considers the expected key and try to convert IPv4 to
IPv6 and IPv6 to IPv4 according with the expected key.

This fixes the bug reported by Apollon Oikonomopoulos.

This bug was introduced somewhere in the 1.5-dev process.
