On Mittwoch, 2. Juli 2008, Steffen Prohaska wrote: > From: Edward Z. Yang <edwardzyang@xxxxxxxxxxxxxxxxx> > > PuTTY requires -P while OpenSSH requires -p; if plink is detected > as GIT_SSH, use the alternate flag. > > Signed-off-by: Edward Z. Yang <edwardzyang@xxxxxxxxxxxxxxxxx> > Signed-off-by: Steffen Prohaska <prohaska@xxxxxx> > --- > connect.c | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/connect.c b/connect.c > index 574f42f..0d007f3 100644 > --- a/connect.c > +++ b/connect.c > @@ -599,11 +599,13 @@ struct child_process *git_connect(int fd[2], const > char *url_orig, conn->argv = arg = xcalloc(6, sizeof(*arg)); > if (protocol == PROTO_SSH) { > const char *ssh = getenv("GIT_SSH"); > + int putty = ssh && strstr(ssh, "plink"); > if (!ssh) ssh = "ssh"; > > *arg++ = ssh; > if (port) { > - *arg++ = "-p"; > + /* P is for PuTTY, p is for OpenSSH */ > + *arg++ = putty ? "-P" : "-p"; > *arg++ = port; > } > *arg++ = host; What about installing a wrapper script, plinkssh, that does this: #!/bin/bash if test "$1" = -p; then port="-P $2" shift; shift fi exec plink $port "$@" and require plink users to set GIT_SSH=plinkssh? -- Hannes -- 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