mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-22 22:31:28 +02:00
BUG/MINOR: connection: fix ip6 dst_port copy in make_proxy_line_v2
triggered by coverity; src_port is set earlier. this should fix github issue #467 Fixes: 7fec02153712 ("MEDIUM: proxy_protocol: Convert IPs to v6 when protocols are mixed") This should be backported to 1.8. Signed-off-by: William Dauchy <w.dauchy@criteo.com> Reviewed-by: Tim Duesterhus <tim@bastelstu.be>
This commit is contained in:
parent
c20b37112b
commit
bd8bf67102
@ -1372,7 +1372,7 @@ int make_proxy_line_v2(char *buf, int buf_len, struct server *srv, struct connec
|
|||||||
if (dst->ss_family == AF_INET) {
|
if (dst->ss_family == AF_INET) {
|
||||||
v4tov6(&tmp, &((struct sockaddr_in *)dst)->sin_addr);
|
v4tov6(&tmp, &((struct sockaddr_in *)dst)->sin_addr);
|
||||||
memcpy(hdr->addr.ip6.dst_addr, &tmp, 16);
|
memcpy(hdr->addr.ip6.dst_addr, &tmp, 16);
|
||||||
hdr->addr.ip6.src_port = ((struct sockaddr_in *)src)->sin_port;
|
hdr->addr.ip6.dst_port = ((struct sockaddr_in *)dst)->sin_port;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
memcpy(hdr->addr.ip6.dst_addr, &((struct sockaddr_in6 *)dst)->sin6_addr, 16);
|
memcpy(hdr->addr.ip6.dst_addr, &((struct sockaddr_in6 *)dst)->sin6_addr, 16);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user