From: Jeff King Date: Sun, 31 Jan 2016 01:13:14 GMT Subject: Re: [PATCH 2/1] support -4 and -6 switches for remote operations Message-ID: <20160131011314.GA22855@sigill.intra.peff.net> In-Reply-To: <20160131000144.GA10117@dcvr.yhbt.net> On Sun, Jan 31, 2016 at 12:01:44AM +0000, Eric Wong wrote: > > > --- 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 ? > > Yes, I'm not sure how else to use OPT_BOOL below... If they're mutually exclusive, and saying "-6" cancels "-4", you probably want something like: enum { USE_NET_ALL = 0, USE_NET_IPV4, USE_NET_IPV6, } use_net; ... OPT_SET_INT('4', "ipv4", &use_net, N_("resolve IPv4 addresses only"), USE_NET_IPV4), OPT_SET_INT('6', "ipv6", &use_net, N_("resolve IPv6 addresses only"), USE_NET_IPV6), Using --no-ipv4 will set it back to USE_NET_ALL, which is probably OK. It will cancel a previous "--ipv4", which is logically consistent, though I guess some people might assume that "--no-ipv4" means "do not use ipv4 addresses". Supporting that would be more complicated. -Peff