From 9651fe690a95378cdb9b2a1cf3e8c5cb625052c7 Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Sun, 26 Jun 2005 08:55:25 +1000 Subject: - (djm) OpenBSD CVS Sync - djm@cvs.openbsd.org 2005/06/17 22:53:47 [ssh.c sshconnect.c] Fix ControlPath's %p expanding to "0" for a default port, spotted dwmw2 AT infradead.org; ok markus@ --- ssh.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'ssh.c') diff --git a/ssh.c b/ssh.c index 5d53cd680..2e93b161a 100644 --- a/ssh.c +++ b/ssh.c @@ -40,7 +40,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: ssh.c,v 1.243 2005/06/16 03:38:36 djm Exp $"); +RCSID("$OpenBSD: ssh.c,v 1.244 2005/06/17 22:53:46 djm Exp $"); #include #include @@ -185,6 +185,7 @@ main(int ac, char **av) int dummy; extern int optind, optreset; extern char *optarg; + struct servent *sp; Forward fwd; __progname = ssh_get_progname(av[0]); @@ -623,6 +624,12 @@ again: if (options.control_path != NULL) control_client(options.control_path); + /* Get default port if port has not been set. */ + if (options.port == 0) { + sp = getservbyname(SSH_SERVICE_NAME, "tcp"); + options.port = sp ? ntohs(sp->s_port) : SSH_DEFAULT_PORT; + } + /* Open a connection to the remote host. */ if (ssh_connect(host, &hostaddr, options.port, options.address_family, options.connection_attempts, -- cgit v1.2.3