Junio C Hamano <gitster@xxxxxxxxx> writes: > I haven't formed an opinion on what the proper solution should be, but > either the credential_from_url() function needs to be updated to accept > the scp style [user@]<host>:<port> argument, or this specific caller > should take the responsibility to do special case the syntax. Well, calling the above "scp" style is a mistake (it is not scp style at all), but the patch to teach the credentail_from_url() to handle the proxy specification may look like this: credential.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/credential.c b/credential.c index 62d1c56..482ae88 100644 --- a/credential.c +++ b/credential.c @@ -324,11 +324,13 @@ void credential_from_url(struct credential *c, const char *url) * (1) proto://<host>/... * (2) proto://<user>@<host>/... * (3) proto://<user>:<pass>@<host>/... + * or "proto://"-less variants of the above for *_proxy variables. */ proto_end = strstr(url, "://"); - if (!proto_end) - return; - cp = proto_end + 3; + if (proto_end) + cp = proto_end + 3; + else + cp = url; at = strchr(cp, '@'); colon = strchr(cp, ':'); slash = strchrnul(cp, '/'); @@ -348,7 +350,7 @@ void credential_from_url(struct credential *c, const char *url) host = at + 1; } - if (proto_end - url > 0) + if (proto_end && proto_end != url) c->protocol = xmemdupz(url, proto_end - url); if (slash - host > 0) c->host = url_decode_mem(host, slash - host); -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html