From a2dad4868bf0681f63fe10264c171b5a547324a5 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 18 Jul 2023 14:45:59 -0700 Subject: [PATCH] fetch: reject --no-ipv[46] Now we have introduced OPT_IPVERSION(), tweak its implementation so that "git clone", "git fetch", and "git push" reject the negated form of "Use only IP version N" options. Signed-off-by: Junio C Hamano --- parse-options.h | 8 ++++---- t/t5516-fetch-push.sh | 11 +++++++++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/parse-options.h b/parse-options.h index e35710733d..57a7fe9d91 100644 --- a/parse-options.h +++ b/parse-options.h @@ -582,9 +582,9 @@ int parse_opt_tracking_mode(const struct option *, const char *, int); #define OPT_AUTOSTASH(v) OPT_BOOL(0, "autostash", v, N_("automatically stash/stash pop before and after")) #define OPT_IPVERSION(v) \ - OPT_SET_INT('4', "ipv4", (v), N_("use IPv4 addresses only"), \ - TRANSPORT_FAMILY_IPV4), \ - OPT_SET_INT('6', "ipv6", (v), N_("use IPv6 addresses only"), \ - TRANSPORT_FAMILY_IPV6) + OPT_SET_INT_F('4', "ipv4", (v), N_("use IPv4 addresses only"), \ + TRANSPORT_FAMILY_IPV4, PARSE_OPT_NONEG), \ + OPT_SET_INT_F('6', "ipv6", (v), N_("use IPv6 addresses only"), \ + TRANSPORT_FAMILY_IPV6, PARSE_OPT_NONEG) #endif diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh index 19ebefa5ac..87163d7745 100755 --- a/t/t5516-fetch-push.sh +++ b/t/t5516-fetch-push.sh @@ -120,6 +120,17 @@ test_expect_success setup ' ' +for cmd in push fetch +do + for opt in ipv4 ipv6 + do + test_expect_success "reject 'git $cmd --no-$opt'" ' + test_must_fail git $cmd --no-$opt 2>err && + grep "unknown option .no-$opt" err + ' + done +done + test_expect_success 'fetch without wildcard' ' mk_empty testrepo && (