]> git.sur5r.net Git - bacula/bacula/commitdiff
Real fix of bug #1897
authorMarco van Wieringen <mvw@planets.elm.net>
Tue, 26 Jun 2012 19:11:17 +0000 (21:11 +0200)
committerKern Sibbald <kern@sibbald.com>
Sat, 20 Apr 2013 12:50:51 +0000 (14:50 +0200)
We are only interested in SOCK_STREAM and protocol IPPROTO_TCP
as that is the way we communicate. When we don't specify that
in the hints for getaddrinfo we also get SOCK_DGRAM/IPPROTO_UDP
and on Linux SOCK_RAW. And possibly more on other platforms.
So lets me more specific. The older fix to suppress duplicates
is also useable as a user might specify two or more names
that resolve to the same address and we want to suppress duplicates
also.

bacula/src/lib/bnet.c

index 1e8b8f4d3eca2ec52497c37f3a6b5442e18ae0c7..a2b18370b33283614903f4fde5457be73c38e21f 100644 (file)
@@ -418,8 +418,8 @@ const char *resolv_host(int family, const char *host, dlist *addr_list)
 
    memset(&hints, 0, sizeof(struct addrinfo));
    hints.ai_family = family;
-   hints.ai_socktype = 0;
-   hints.ai_protocol = 0;
+   hints.ai_socktype = SOCK_STREAM;
+   hints.ai_protocol = IPPROTO_TCP;
    hints.ai_flags = 0;
 
    res = getaddrinfo(host, NULL, &hints, &ai);