summaryrefslogtreecommitdiff
path: root/ssh.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2005-06-16 13:18:34 +1000
committerDamien Miller <djm@mindrot.org>2005-06-16 13:18:34 +1000
commit6476cad9bb6b8a9524a153639b4ebceb3427e743 (patch)
tree59e9068c25f8d9c6d7e51f66e3c8c983c52db0d9 /ssh.c
parent05656967b111a7c2b1f831eab0c31002dfac6fa9 (diff)
- djm@cvs.openbsd.org 2005/06/06 11:20:36
[auth.c auth.h misc.c misc.h ssh.c ssh_config.5 sshconnect.c] introduce a generic %foo expansion function. replace existing % expansion and add expansion to ControlPath; ok markus@
Diffstat (limited to 'ssh.c')
-rw-r--r--ssh.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/ssh.c b/ssh.c
index 43ecbd924..0871d06de 100644
--- a/ssh.c
+++ b/ssh.c
@@ -40,7 +40,7 @@
40 */ 40 */
41 41
42#include "includes.h" 42#include "includes.h"
43RCSID("$OpenBSD: ssh.c,v 1.240 2005/05/27 08:30:37 djm Exp $"); 43RCSID("$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");