From: "Torsten Bögershausen" <tboegi@web.de>
To: Eric Wong <normalperson@yhbt.net>, Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org, Jeff King <peff@peff.net>
Subject: Re: [PATCH 2/1] support -4 and -6 switches for remote operations
Date: Sun, 31 Jan 2016 00:34:31 +0100 [thread overview]
Message-ID: <56AD4887.3070207@web.de> (raw)
In-Reply-To: <20160130131353.GA20429@dcvr.yhbt.net>
On 2016-01-30 14.13, Eric Wong wrote:
Nicely done, some minor questions inline.
> Sometimes, it is necessary to force IPv4-only or IPv6-only
> operation on networks where name lookups may return a
> non-routable address and stall remote operations.
>
> The ssh(1) command has an equivalent switches which we may
> pass when we run them.
Should we mention that putty and tortoiseplink don't have these options ?
At least in the commit message ?
> rsync support is untouched for now since it is deprecated
> and scheduled to be removed.
>
> Signed-off-by: Eric Wong <normalperson@yhbt.net>
> ---
> Documentation/fetch-options.txt | 8 ++++++++
> Documentation/git-push.txt | 7 +++++++
> builtin/clone.c | 4 ++++
> builtin/fetch.c | 4 ++++
> builtin/push.c | 4 ++++
> connect.c | 8 ++++++++
> connect.h | 2 ++
> http.c | 9 +++++++++
> http.h | 1 +
> remote-curl.c | 19 +++++++++++++++++++
> transport-helper.c | 7 +++++++
> transport.c | 18 ++++++++++++++++++
> transport.h | 11 +++++++++++
> 13 files changed, 102 insertions(+)
>
> diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
> index 952dfdf..6ec7dde 100644
> --- a/Documentation/fetch-options.txt
> +++ b/Documentation/fetch-options.txt
> @@ -158,3 +158,11 @@ endif::git-pull[]
> by default when it is attached to a terminal, unless -q
> is specified. This flag forces progress status even if the
> standard error stream is not directed to a terminal.
> +
> +-4::
> +--ipv4::
> + Resolve IPv4 addresses only, ignoring IPv6 addresses.
> +
> +-6::
> +--ipv6::
> + Resolve IPv6 addresses only, ignoring IPv4 addresses.
> diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt
> index 32482ce..559c166 100644
> --- a/Documentation/git-push.txt
> +++ b/Documentation/git-push.txt
> @@ -277,6 +277,13 @@ origin +master` to force a push to the `master` branch). See the
> default is --verify, giving the hook a chance to prevent the
> push. With --no-verify, the hook is bypassed completely.
>
> +-4::
> +--ipv4::
> + Resolve IPv4 addresses only, ignoring IPv6 addresses.
> +
> +-6::
> +--ipv6::
> + Resolve IPv6 addresses only, ignoring IPv4 addresses.
>
> include::urls-remotes.txt[]
>
> diff --git a/builtin/clone.c b/builtin/clone.c
> index 81e238f..3feae64 100644
> --- a/builtin/clone.c
> +++ b/builtin/clone.c
> @@ -47,6 +47,7 @@ static const char *real_git_dir;
> static char *option_upload_pack = "git-upload-pack";
> static int option_verbosity;
> static int option_progress = -1;
> +static int ipv4, ipv6;
Do we need 2 variables here ?
Or would
int preferred_ip_version
be better ?
> static struct string_list option_config;
> static struct string_list option_reference;
> static int option_dissociate;
> @@ -92,6 +93,8 @@ static struct option builtin_clone_options[] = {
> N_("separate git dir from working tree")),
> OPT_STRING_LIST('c', "config", &option_config, N_("key=value"),
> N_("set config inside the new repository")),
> + OPT_BOOL('4', "ipv4", &ipv4, N_("resolve IPv4 addresses only")),
> + OPT_BOOL('6', "ipv6", &ipv6, N_("resolve IPv6 addresses only")),
Technically OK to mention resolve, but does it give any information to the user ?
s/resolve IPv4 addresses only/use IPv4 addresses only/
> OPT_END()
> };
>
> @@ -970,6 +973,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix)
> remote = remote_get(option_origin);
> transport = transport_get(remote, remote->url[0]);
> transport_set_verbosity(transport, option_verbosity, option_progress);
> + transport_set_family(transport, ipv4, ipv6);
>
Does it make sense to name the variable into
ipv4only (to make clear that it does not mean ipv4_allowed ?)
(and similar in the rest of the code)
[snip]
next prev parent reply other threads:[~2016-01-30 23:35 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-28 22:51 [PATCH] pass transport verbosity down to git_connect Eric Wong
2016-01-28 23:45 ` Junio C Hamano
2016-01-30 8:50 ` [PATCH v2] " Eric Wong
2016-01-30 13:13 ` [PATCH 2/1] support -4 and -6 switches for remote operations Eric Wong
2016-01-30 13:28 ` Eric Wong
2016-01-30 23:34 ` Torsten Bögershausen [this message]
2016-01-31 0:01 ` Eric Wong
2016-01-31 1:13 ` Jeff King
2016-02-03 4:09 ` [PATCH v2 " Eric Wong
2016-02-12 11:31 ` Eric Wong
2016-02-12 15:43 ` Torsten Bögershausen
2016-01-31 16:03 ` [PATCH " Torsten Bögershausen
2016-01-28 23:53 ` [PATCH] pass transport verbosity down to git_connect Jeff King
2016-01-29 0:38 ` Eric Wong
2016-01-29 3:19 ` Junio C Hamano
2016-01-29 3:47 ` Jeff King
2016-01-29 17:34 ` Junio C Hamano
2016-01-29 17:41 ` Jeff King
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56AD4887.3070207@web.de \
--to=tboegi@web.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=normalperson@yhbt.net \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.