diff options
Diffstat (limited to 'connect.c')
-rw-r--r-- | connect.c | 15 |
1 files changed, 12 insertions, 3 deletions
@@ -967,11 +967,20 @@ static void push_ssh_options(struct argv_array *args, struct argv_array *env, if (variant == VARIANT_TORTOISEPLINK) argv_array_push(args, "-batch"); - if (port && variant != VARIANT_SIMPLE) { - if (variant == VARIANT_SSH) + if (port) { + switch (variant) { + case VARIANT_AUTO: + BUG("VARIANT_AUTO passed to push_ssh_options"); + case VARIANT_SIMPLE: + die("ssh variant 'simple' does not support setting port"); + case VARIANT_SSH: argv_array_push(args, "-p"); - else + break; + case VARIANT_PLINK: + case VARIANT_PUTTY: + case VARIANT_TORTOISEPLINK: argv_array_push(args, "-P"); + } argv_array_push(args, port); } |