Author: kroosec Date: 2017-10-25 17:04:25 +0200 (Wed, 25 Oct 2017) New Revision: 29929
Modified: branches/openvas-libraries-9.0/ChangeLog branches/openvas-libraries-9.0/base/openvas_hosts.c Log: Backport r29883. * base/hosts.c (gvm_host_reverse_lookup): Retry on getnameinfo() returning EAI_AGAIN. Modified: branches/openvas-libraries-9.0/ChangeLog =================================================================== --- branches/openvas-libraries-9.0/ChangeLog 2017-10-25 15:03:56 UTC (rev 29928) +++ branches/openvas-libraries-9.0/ChangeLog 2017-10-25 15:04:25 UTC (rev 29929) @@ -1,5 +1,12 @@ 2017-10-25 Hani Benhabiles <hani.benhabi...@greenbone.net> + Backport r29883. + + * base/hosts.c (gvm_host_reverse_lookup): Retry on getnameinfo() + returning EAI_AGAIN. + +2017-10-25 Hani Benhabiles <hani.benhabi...@greenbone.net> + Backport r29916. * nasl/nasl_socket.c (nasl_open_privileged_socket): Set lowest_socket Modified: branches/openvas-libraries-9.0/base/openvas_hosts.c =================================================================== --- branches/openvas-libraries-9.0/base/openvas_hosts.c 2017-10-25 15:03:56 UTC (rev 29928) +++ branches/openvas-libraries-9.0/base/openvas_hosts.c 2017-10-25 15:04:25 UTC (rev 29929) @@ -1386,17 +1386,22 @@ else if (host->type == HOST_TYPE_IPV4) { struct sockaddr_in sa; + int retry = 2; gchar hostname[1000]; bzero (&sa, sizeof (struct sockaddr)); sa.sin_addr = host->addr; sa.sin_family = AF_INET; - - if (getnameinfo ((struct sockaddr *) &sa, sizeof (sa), hostname, - sizeof (hostname), NULL, 0, NI_NAMEREQD)) - return NULL; - else - return g_strdup (hostname); + while (retry--) + { + int ret = getnameinfo ((struct sockaddr *) &sa, sizeof (sa), hostname, + sizeof (hostname), NULL, 0, NI_NAMEREQD); + if (!ret) + return g_strdup (hostname); + if (ret != EAI_AGAIN) + break; + } + return NULL; } else if (host->type == HOST_TYPE_IPV6) { _______________________________________________ Openvas-commits mailing list Openvas-commits@wald.intevation.org https://lists.wald.intevation.org/cgi-bin/mailman/listinfo/openvas-commits