Am 10.06.2012 11:05, schrieb Jonathan Nieder: > Hi Eduardo, > > Eduardo Trápani wrote[1]: > >> git clone ssh://[2001:0:53aa:64c:1845:430c:4179:d71f]:3333/deponejo/unua >> >> Will try to connect to port 22 and not 3333. The port number seems to be >> ignored. > > True. How about something like this (untested)? > > Signed-off-by: Jonathan Nieder <jrnieder@xxxxxxxxx> > --- > [1] http://bugs.debian.org/646178 > > connect.c | 14 +++++++++++--- > 1 file changed, 11 insertions(+), 3 deletions(-) How about this instead? Except perhaps with a commit message that is vaguely understandable? -- >8 -- If we encounter an address part shaped like "[HOST]:PORT", we skip the opening bracket and replace the closing one with a NUL. The variable host then points to HOST and we've cut off the PORT part. Thus, when we go looking for it using host a bit later, we can't find it. Start at end instead, which either points to the colon, if present, or is equal to host. Signed-off-by: Rene Scharfe <rene.scharfe@xxxxxxxxxxxxxx> --- We have similar code in daemon.c. Can we share more? And make it testable? connect.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/connect.c b/connect.c index 912cdde..41b7400 100644 --- a/connect.c +++ b/connect.c @@ -536,7 +536,7 @@ struct child_process *git_connect(int fd[2], const char *url_orig, * Add support for ssh port: ssh://host.xy:<port>/... */ if (protocol == PROTO_SSH && host != url) - port = get_port(host); + port = get_port(end); if (protocol == PROTO_GIT) { /* These underlying connection commands die() if they -- 1.7.10.2 -- 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