diff options
Diffstat (limited to 'ssh.c')
-rw-r--r-- | ssh.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -40,7 +40,7 @@ | |||
40 | */ | 40 | */ |
41 | 41 | ||
42 | #include "includes.h" | 42 | #include "includes.h" |
43 | RCSID("$OpenBSD: ssh.c,v 1.240 2005/05/27 08:30:37 djm Exp $"); | 43 | RCSID("$OpenBSD: ssh.c,v 1.241 2005/06/06 11:20:36 djm Exp $"); |
44 | 44 | ||
45 | #include <openssl/evp.h> | 45 | #include <openssl/evp.h> |
46 | #include <openssl/err.h> | 46 | #include <openssl/err.h> |
@@ -609,8 +609,12 @@ again: | |||
609 | options.proxy_command = NULL; | 609 | options.proxy_command = NULL; |
610 | 610 | ||
611 | if (options.control_path != NULL) { | 611 | if (options.control_path != NULL) { |
612 | options.control_path = tilde_expand_filename( | 612 | snprintf(buf, sizeof(buf), "%d", options.port); |
613 | options.control_path, original_real_uid); | 613 | cp = tilde_expand_filename(options.control_path, |
614 | original_real_uid); | ||
615 | options.control_path = percent_expand(cp, "p", buf, "h", host, | ||
616 | "r", options.user, (char *)NULL); | ||
617 | xfree(cp); | ||
614 | } | 618 | } |
615 | if (mux_command != 0 && options.control_path == NULL) | 619 | if (mux_command != 0 && options.control_path == NULL) |
616 | fatal("No ControlPath specified for \"-O\" command"); | 620 | fatal("No ControlPath specified for \"-O\" command"); |