https://bugs.gentoo.org/208875
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542148
https://savannah.gnu.org/bugs/index.php?37135

--- a/src/utils.c
+++ b/src/utils.c
@@ -288,7 +288,7 @@ make_connect(const char *host, int port)
 
       retlen = sizeof(retval);
       error = getsockopt(sockfd, SOL_SOCKET, SO_ERROR, &retval, &retlen);
-      if (error < 0 || retval)
+      if (error == 0 && !retval)
 	{
 	  break;
 	}