[PATCH] Do not use h_errno after connect(2): the function does not set it
- From
Alex Riesen <raa.lkml@gmail.com>
- Date
- Jun 12, 2007, 20:52 UTC
- Message-ID
- <20070612205210.GC2459@steel.home>
- In-Reply-To
- <86ejkh40cr.fsf@blue.stonehenge.com>
Randal L. Schwartz noticed compilation problems on SunOS, which made me look at the code again. The thing is, h_errno is not used by connect(2), it is only for functions from netdb.h, like gethostbyname.
Signed-off-by: Alex Riesen <raa.lkml@gmail.com> ---
This must fix your link problems (unless you want to use NO_IPV6=1, where another fix will be posted in a minute).
connect.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/connect.c b/connect.c index 7fab9c0..a5afd2a 100644 --- a/connect.c +++ b/connect.c @@ -224,11 +224,10 @@ static int git_tcp_connect_sock(char *host, int flags) } if (connect(sockfd, ai->ai_addr, ai->ai_addrlen) < 0) { saved_errno = errno; - fprintf(stderr, "%s[%d: %s]: net=%s, errno=%s\n", + fprintf(stderr, "%s[%d: %s]: errno=%s\n", host, cnt, ai_name(ai), - hstrerror(h_errno), strerror(saved_errno)); close(sockfd); sockfd = -1; @@ -315,11 +314,10 @@ static int git_tcp_connect_sock(char *host, int flags) if (connect(sockfd, (struct sockaddr *)&sa, sizeof sa) < 0) { saved_errno = errno; - fprintf(stderr, "%s[%d: %s]: net=%s, errno=%s\n", + fprintf(stderr, "%s[%d: %s]: errno=%s\n", host, cnt, inet_ntoa(*(struct in_addr *)&sa.sin_addr), - hstrerror(h_errno), strerror(saved_errno)); close(sockfd); sockfd = -1;
-- 1.5.2.1.191.gc01a