[PATCH 2/2] remote-curl.c: handle v1 when check_smart_http
- From
- lilinchao@oschina.cn <lilinchao@oschina.cn>
- Date
- Mar 24, 2021, 05:36 UTC
- Message-ID
- <006547b28c6311eb93820024e87935e7@oschina.cn>
- In-Reply-To
- <20210324053648.25584-1-lilinchao@oschina.cn>
From: lilinchao <lilinchao@oschina.cn>
When clone with http protocol version 1, the server side just tells client that "invalid server response, got version 1", this is not clear enough, because version 0 is ok, and version 2 is ok, then version 1 should be ok too intuitively, but the other side just treat it as "invalid response", this can't explain why is not ok.
>From receive-pack/upload-pack, there is a comment which I think,
can explain it: "v1 is just the original protocol with a version string". So I made this patch to try to fix it.
Signed-off-by: lilinchao <lilinchao@oschina.cn> --- remote-curl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/remote-curl.c b/remote-curl.c index 0290b04891..1fe1f3c475 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -434,7 +434,8 @@ static void check_smart_http(struct discovery *d, const char *service, * be handled elsewhere. */ d->proto_git = 1; - + } else if (!strcmp(reader.line, "version 1")) { + die(_("v1 is just the original protocol with a version string, use v0 or v2 instead.")); } else { die(_("invalid server response; got '%s'"), reader.line); }
-- 2.30.0.1006.g4a81e96670