BUG: dns: can't connect UDP socket on FreeBSD
PiBANL reported that HAProxy's DNS resolver can't "connect" its socker on FreeBSD. Remi Gacogne reported that we should use the function 'get_addr_len' to get the addr structure size instead of sizeof.
This commit is contained in:
parent
a9937f9519
commit
8c62c47cb2
@ -848,7 +848,7 @@ int dns_init_resolvers(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* "connect" the UDP socket to the name server IP */
|
/* "connect" the UDP socket to the name server IP */
|
||||||
if (connect(fd, (struct sockaddr*)&curnameserver->addr, sizeof(curnameserver->addr)) == -1) {
|
if (connect(fd, (struct sockaddr*)&curnameserver->addr, get_addr_len(&curnameserver->addr)) == -1) {
|
||||||
Alert("Starting [%s/%s] nameserver: can't connect socket.\n", curr_resolvers->id,
|
Alert("Starting [%s/%s] nameserver: can't connect socket.\n", curr_resolvers->id,
|
||||||
curnameserver->id);
|
curnameserver->id);
|
||||||
close(fd);
|
close(fd);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user