# Resend: [PATCH] Do not log unless all connect() attempts fail

5 messages from 2011-07-11 to 2011-07-13. Participants: Dave Zarzycki, Jeff King, Junio C Hamano, Erik Faye-Lund.
Thread: https://gitlist.dev/t/27791

## Dave Zarzycki, 2011-07-11 18:06

Subject: Resend: [PATCH] Do not log unless all connect() attempts fail
Message-ID: <A3C89B89-4E31-400E-9DF8-C0F289D72D81@apple.com>
URL: https://gitlist.dev/e/A3C89B89-4E31-400E-9DF8-C0F289D72D81%40apple.com

```
IPv6 hosts are often unreachable on the primarily IPv4 Internet and
therefore we shouldn't print an error if there are still other hosts we
can try to connect() to. This helps "git fetch --quiet" stay quiet.
---
 connect.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/connect.c b/connect.c
index 2119c3f..8eb9f44 100644
--- a/connect.c
+++ b/connect.c
@@ -192,6 +192,7 @@ static const char *ai_name(const struct addrinfo *ai)
  */
 static int git_tcp_connect_sock(char *host, int flags)
 {
+       struct strbuf error_message = STRBUF_INIT;
        int sockfd = -1, saved_errno = 0;
        const char *port = STR(DEFAULT_GIT_PORT);
        struct addrinfo hints, *ai0, *ai;
@@ -225,11 +226,8 @@ 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]: errno=%s\n",
-                               host,
-                               cnt,
-                               ai_name(ai),
-                               strerror(saved_errno));
+                       strbuf_addf(&error_message, "%s[%d: %s]: errno=%s\n",
+                               host, cnt, ai_name(ai), strerror(saved_errno));
                        close(sockfd);
                        sockfd = -1;
                        continue;
@@ -242,11 +240,13 @@ static int git_tcp_connect_sock(char *host, int flags)
        freeaddrinfo(ai0);

        if (sockfd < 0)
-               die("unable to connect a socket (%s)", strerror(saved_errno));
+               die("unable to connect to %s:\n%s", host, error_message.buf);

        if (flags & CONNECT_VERBOSE)
                fprintf(stderr, "done.\n");

+       strbuf_release(&error_message);
+
        return sockfd;
 }

-- 
1.7.6.135.g8cdba

```

## Jeff King, 2011-07-12 05:55

Subject: Re: Resend: [PATCH] Do not log unless all connect() attempts fail
Message-ID: <20110712055553.GD11644@sigill.intra.peff.net>
URL: https://gitlist.dev/e/20110712055553.GD11644%40sigill.intra.peff.net
In-Reply-To: <A3C89B89-4E31-400E-9DF8-C0F289D72D81@apple.com>

```
On Mon, Jul 11, 2011 at 11:06:15AM -0700, Dave Zarzycki wrote:

> IPv6 hosts are often unreachable on the primarily IPv4 Internet and
> therefore we shouldn't print an error if there are still other hosts we
> can try to connect() to. This helps "git fetch --quiet" stay quiet.

Thanks for the resend; I think this got lost in the shuffle between
releases. This version addresses my complaints about the original; I
don't see any reason it shouldn't be applied.

-Peff

```

## Junio C Hamano, 2011-07-12 16:09

Subject: Re: Resend: [PATCH] Do not log unless all connect() attempts fail
Message-ID: <7v39iba3b2.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7v39iba3b2.fsf%40alter.siamese.dyndns.org
In-Reply-To: <A3C89B89-4E31-400E-9DF8-C0F289D72D81@apple.com>

```
This looks Looks good to me; could you sign-off the patch, please?

Thanks.

```

## Dave Zarzycki, 2011-07-12 16:29

Subject: Re: Resend: [PATCH] Do not log unless all connect() attempts fail
Message-ID: <A10BFC0E-05BB-41CF-BC86-28D3FF4CC7A8@apple.com>
URL: https://gitlist.dev/e/A10BFC0E-05BB-41CF-BC86-28D3FF4CC7A8%40apple.com
In-Reply-To: <7v39iba3b2.fsf@alter.siamese.dyndns.org>

```
Sure, no problem-o. (Sorry, I should have read the submitting patches document first.) Thanks again!


On Jul 12, 2011, at 9:09 AM, Junio C Hamano wrote:

> This looks Looks good to me; could you sign-off the patch, please?
> 
> Thanks.

```

## Erik Faye-Lund, 2011-07-13 09:26

Subject: Re: Resend: [PATCH] Do not log unless all connect() attempts fail
Message-ID: <CABPQNSYxQDxgDS5z-TMxC3WtNQ7KV_F4f6HTKOH-SpwMQsiHUw@mail.gmail.com>
URL: https://gitlist.dev/e/CABPQNSYxQDxgDS5z-TMxC3WtNQ7KV_F4f6HTKOH-SpwMQsiHUw%40mail.gmail.com
In-Reply-To: <7v39iba3b2.fsf@alter.siamese.dyndns.org>

```
On Tue, Jul 12, 2011 at 6:09 PM, Junio C Hamano <gitster@pobox.com> wrote:
> This looks Looks good to me; could you sign-off the patch, please?
>

As I noted on the resend with the sign-off, I believe there's a
problem with the patch where saved_errno is written to in one place
but the error never gets reported after applying the patch.

```
