summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordtucker@openbsd.org <dtucker@openbsd.org>2018-07-19 10:28:47 +0000
committerDamien Miller <djm@mindrot.org>2018-07-19 21:44:21 +1000
commit95d41e90eafcd1286a901e8e361e4a37b98aeb52 (patch)
tree79c13c35f94c8b199b2f0fcabacd30a1474b955a
parent258dc8bb07dfb35a46e52b0822a2c5b7027df60a (diff)
upstream: Deprecate UsePrivilegedPort now that support for running
ssh(1) setuid has been removed, remove supporting code and clean up references to it in the man pages We have not shipped ssh(1) the setuid bit since 2002. If ayone really needs to make connections from a low port number this can be implemented via a small setuid ProxyCommand. ok markus@ jmc@ djm@ OpenBSD-Commit-ID: d03364610b7123ae4c6792f5274bd147b6de717e
-rw-r--r--readconf.c12
-rw-r--r--readconf.h3
-rw-r--r--scp.15
-rw-r--r--sftp.15
-rw-r--r--ssh.15
-rw-r--r--ssh.c10
-rw-r--r--ssh_config.523
-rw-r--r--sshconnect.c24
-rw-r--r--sshconnect.h4
9 files changed, 25 insertions, 66 deletions
diff --git a/readconf.c b/readconf.c
index f40eb3803..ce832526a 100644
--- a/readconf.c
+++ b/readconf.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.c,v 1.293 2018/07/18 11:34:04 dtucker Exp $ */ 1/* $OpenBSD: readconf.c,v 1.294 2018/07/19 10:28:47 dtucker Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -190,6 +190,7 @@ static struct {
190 { "userknownhostsfile2", oDeprecated }, 190 { "userknownhostsfile2", oDeprecated },
191 { "useroaming", oDeprecated }, 191 { "useroaming", oDeprecated },
192 { "usersh", oDeprecated }, 192 { "usersh", oDeprecated },
193 { "useprivilegedport", oDeprecated },
193 194
194 /* Unsupported options */ 195 /* Unsupported options */
195 { "afstokenpassing", oUnsupported }, 196 { "afstokenpassing", oUnsupported },
@@ -222,7 +223,6 @@ static struct {
222 { "exitonforwardfailure", oExitOnForwardFailure }, 223 { "exitonforwardfailure", oExitOnForwardFailure },
223 { "xauthlocation", oXAuthLocation }, 224 { "xauthlocation", oXAuthLocation },
224 { "gatewayports", oGatewayPorts }, 225 { "gatewayports", oGatewayPorts },
225 { "useprivilegedport", oUsePrivilegedPort },
226 { "passwordauthentication", oPasswordAuthentication }, 226 { "passwordauthentication", oPasswordAuthentication },
227 { "kbdinteractiveauthentication", oKbdInteractiveAuthentication }, 227 { "kbdinteractiveauthentication", oKbdInteractiveAuthentication },
228 { "kbdinteractivedevices", oKbdInteractiveDevices }, 228 { "kbdinteractivedevices", oKbdInteractiveDevices },
@@ -949,10 +949,6 @@ parse_time:
949 intptr = &options->exit_on_forward_failure; 949 intptr = &options->exit_on_forward_failure;
950 goto parse_flag; 950 goto parse_flag;
951 951
952 case oUsePrivilegedPort:
953 intptr = &options->use_privileged_port;
954 goto parse_flag;
955
956 case oPasswordAuthentication: 952 case oPasswordAuthentication:
957 intptr = &options->password_authentication; 953 intptr = &options->password_authentication;
958 goto parse_flag; 954 goto parse_flag;
@@ -1822,7 +1818,6 @@ initialize_options(Options * options)
1822 options->fwd_opts.gateway_ports = -1; 1818 options->fwd_opts.gateway_ports = -1;
1823 options->fwd_opts.streamlocal_bind_mask = (mode_t)-1; 1819 options->fwd_opts.streamlocal_bind_mask = (mode_t)-1;
1824 options->fwd_opts.streamlocal_bind_unlink = -1; 1820 options->fwd_opts.streamlocal_bind_unlink = -1;
1825 options->use_privileged_port = -1;
1826 options->pubkey_authentication = -1; 1821 options->pubkey_authentication = -1;
1827 options->challenge_response_authentication = -1; 1822 options->challenge_response_authentication = -1;
1828 options->gss_authentication = -1; 1823 options->gss_authentication = -1;
@@ -1964,8 +1959,6 @@ fill_default_options(Options * options)
1964 options->fwd_opts.streamlocal_bind_mask = 0177; 1959 options->fwd_opts.streamlocal_bind_mask = 0177;
1965 if (options->fwd_opts.streamlocal_bind_unlink == -1) 1960 if (options->fwd_opts.streamlocal_bind_unlink == -1)
1966 options->fwd_opts.streamlocal_bind_unlink = 0; 1961 options->fwd_opts.streamlocal_bind_unlink = 0;
1967 if (options->use_privileged_port == -1)
1968 options->use_privileged_port = 0;
1969 if (options->pubkey_authentication == -1) 1962 if (options->pubkey_authentication == -1)
1970 options->pubkey_authentication = 1; 1963 options->pubkey_authentication = 1;
1971 if (options->challenge_response_authentication == -1) 1964 if (options->challenge_response_authentication == -1)
@@ -2599,7 +2592,6 @@ dump_client_config(Options *o, const char *host)
2599 dump_cfg_fmtint(oStrictHostKeyChecking, o->strict_host_key_checking); 2592 dump_cfg_fmtint(oStrictHostKeyChecking, o->strict_host_key_checking);
2600 dump_cfg_fmtint(oTCPKeepAlive, o->tcp_keep_alive); 2593 dump_cfg_fmtint(oTCPKeepAlive, o->tcp_keep_alive);
2601 dump_cfg_fmtint(oTunnel, o->tun_open); 2594 dump_cfg_fmtint(oTunnel, o->tun_open);
2602 dump_cfg_fmtint(oUsePrivilegedPort, o->use_privileged_port);
2603 dump_cfg_fmtint(oVerifyHostKeyDNS, o->verify_host_key_dns); 2595 dump_cfg_fmtint(oVerifyHostKeyDNS, o->verify_host_key_dns);
2604 dump_cfg_fmtint(oVisualHostKey, o->visual_host_key); 2596 dump_cfg_fmtint(oVisualHostKey, o->visual_host_key);
2605 dump_cfg_fmtint(oUpdateHostkeys, o->update_hostkeys); 2597 dump_cfg_fmtint(oUpdateHostkeys, o->update_hostkeys);
diff --git a/readconf.h b/readconf.h
index d8595f07e..c56887816 100644
--- a/readconf.h
+++ b/readconf.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.h,v 1.126 2018/06/09 03:01:12 djm Exp $ */ 1/* $OpenBSD: readconf.h,v 1.127 2018/07/19 10:28:47 dtucker Exp $ */
2 2
3/* 3/*
4 * Author: Tatu Ylonen <ylo@cs.hut.fi> 4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -35,7 +35,6 @@ typedef struct {
35 int exit_on_forward_failure; /* Exit if bind(2) fails for -L/-R */ 35 int exit_on_forward_failure; /* Exit if bind(2) fails for -L/-R */
36 char *xauth_location; /* Location for xauth program */ 36 char *xauth_location; /* Location for xauth program */
37 struct ForwardOptions fwd_opts; /* forwarding options */ 37 struct ForwardOptions fwd_opts; /* forwarding options */
38 int use_privileged_port; /* Don't use privileged port if false. */
39 int pubkey_authentication; /* Try ssh2 pubkey authentication. */ 38 int pubkey_authentication; /* Try ssh2 pubkey authentication. */
40 int hostbased_authentication; /* ssh2's rhosts_rsa */ 39 int hostbased_authentication; /* ssh2's rhosts_rsa */
41 int challenge_response_authentication; 40 int challenge_response_authentication;
diff --git a/scp.1 b/scp.1
index be8309b22..92abcaf07 100644
--- a/scp.1
+++ b/scp.1
@@ -8,9 +8,9 @@
8.\" 8.\"
9.\" Created: Sun May 7 00:14:37 1995 ylo 9.\" Created: Sun May 7 00:14:37 1995 ylo
10.\" 10.\"
11.\" $OpenBSD: scp.1,v 1.79 2018/06/09 06:36:31 jmc Exp $ 11.\" $OpenBSD: scp.1,v 1.80 2018/07/19 10:28:47 dtucker Exp $
12.\" 12.\"
13.Dd $Mdocdate: June 9 2018 $ 13.Dd $Mdocdate: July 19 2018 $
14.Dt SCP 1 14.Dt SCP 1
15.Os 15.Os
16.Sh NAME 16.Sh NAME
@@ -177,7 +177,6 @@ For full details of the options listed below, and their possible values, see
177.It StrictHostKeyChecking 177.It StrictHostKeyChecking
178.It TCPKeepAlive 178.It TCPKeepAlive
179.It UpdateHostKeys 179.It UpdateHostKeys
180.It UsePrivilegedPort
181.It User 180.It User
182.It UserKnownHostsFile 181.It UserKnownHostsFile
183.It VerifyHostKeyDNS 182.It VerifyHostKeyDNS
diff --git a/sftp.1 b/sftp.1
index 1e21e2023..2ae5e354e 100644
--- a/sftp.1
+++ b/sftp.1
@@ -1,4 +1,4 @@
1.\" $OpenBSD: sftp.1,v 1.116 2018/06/09 06:36:31 jmc Exp $ 1.\" $OpenBSD: sftp.1,v 1.117 2018/07/19 10:28:47 dtucker Exp $
2.\" 2.\"
3.\" Copyright (c) 2001 Damien Miller. All rights reserved. 3.\" Copyright (c) 2001 Damien Miller. All rights reserved.
4.\" 4.\"
@@ -22,7 +22,7 @@
22.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 22.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24.\" 24.\"
25.Dd $Mdocdate: June 9 2018 $ 25.Dd $Mdocdate: July 19 2018 $
26.Dt SFTP 1 26.Dt SFTP 1
27.Os 27.Os
28.Sh NAME 28.Sh NAME
@@ -247,7 +247,6 @@ For full details of the options listed below, and their possible values, see
247.It StrictHostKeyChecking 247.It StrictHostKeyChecking
248.It TCPKeepAlive 248.It TCPKeepAlive
249.It UpdateHostKeys 249.It UpdateHostKeys
250.It UsePrivilegedPort
251.It User 250.It User
252.It UserKnownHostsFile 251.It UserKnownHostsFile
253.It VerifyHostKeyDNS 252.It VerifyHostKeyDNS
diff --git a/ssh.1 b/ssh.1
index 40b4bfb16..b20908a5e 100644
--- a/ssh.1
+++ b/ssh.1
@@ -33,8 +33,8 @@
33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35.\" 35.\"
36.\" $OpenBSD: ssh.1,v 1.395 2018/06/09 06:36:31 jmc Exp $ 36.\" $OpenBSD: ssh.1,v 1.396 2018/07/19 10:28:47 dtucker Exp $
37.Dd $Mdocdate: June 9 2018 $ 37.Dd $Mdocdate: July 19 2018 $
38.Dt SSH 1 38.Dt SSH 1
39.Os 39.Os
40.Sh NAME 40.Sh NAME
@@ -535,7 +535,6 @@ For full details of the options listed below, and their possible values, see
535.It Tunnel 535.It Tunnel
536.It TunnelDevice 536.It TunnelDevice
537.It UpdateHostKeys 537.It UpdateHostKeys
538.It UsePrivilegedPort
539.It User 538.It User
540.It UserKnownHostsFile 539.It UserKnownHostsFile
541.It VerifyHostKeyDNS 540.It VerifyHostKeyDNS
diff --git a/ssh.c b/ssh.c
index 49a9fab20..a95d0cf93 100644
--- a/ssh.c
+++ b/ssh.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssh.c,v 1.487 2018/07/18 11:34:04 dtucker Exp $ */ 1/* $OpenBSD: ssh.c,v 1.488 2018/07/19 10:28:47 dtucker Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -733,7 +733,6 @@ main(int ac, char **av)
733 fatal("Invalid multiplex command."); 733 fatal("Invalid multiplex command.");
734 break; 734 break;
735 case 'P': /* deprecated */ 735 case 'P': /* deprecated */
736 options.use_privileged_port = 0;
737 break; 736 break;
738 case 'Q': 737 case 'Q':
739 cp = NULL; 738 cp = NULL;
@@ -1236,10 +1235,6 @@ main(int ac, char **av)
1236 } 1235 }
1237 if (options.connection_attempts <= 0) 1236 if (options.connection_attempts <= 0)
1238 fatal("Invalid number of ConnectionAttempts"); 1237 fatal("Invalid number of ConnectionAttempts");
1239#ifndef HAVE_CYGWIN
1240 if (original_effective_uid != 0)
1241 options.use_privileged_port = 0;
1242#endif
1243 1238
1244 if (sshbuf_len(command) != 0 && options.remote_command != NULL) 1239 if (sshbuf_len(command) != 0 && options.remote_command != NULL)
1245 fatal("Cannot execute command-line and remote command."); 1240 fatal("Cannot execute command-line and remote command.");
@@ -1376,8 +1371,7 @@ main(int ac, char **av)
1376 /* Open a connection to the remote host. */ 1371 /* Open a connection to the remote host. */
1377 if (ssh_connect(ssh, host, addrs, &hostaddr, options.port, 1372 if (ssh_connect(ssh, host, addrs, &hostaddr, options.port,
1378 options.address_family, options.connection_attempts, 1373 options.address_family, options.connection_attempts,
1379 &timeout_ms, options.tcp_keep_alive, 1374 &timeout_ms, options.tcp_keep_alive) != 0)
1380 options.use_privileged_port) != 0)
1381 exit(255); 1375 exit(255);
1382 1376
1383 if (addrs != NULL) 1377 if (addrs != NULL)
diff --git a/ssh_config.5 b/ssh_config.5
index df94d60db..0e5bb9078 100644
--- a/ssh_config.5
+++ b/ssh_config.5
@@ -33,8 +33,8 @@
33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 33.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 34.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35.\" 35.\"
36.\" $OpenBSD: ssh_config.5,v 1.279 2018/07/04 13:49:31 djm Exp $ 36.\" $OpenBSD: ssh_config.5,v 1.280 2018/07/19 10:28:47 dtucker Exp $
37.Dd $Mdocdate: July 4 2018 $ 37.Dd $Mdocdate: July 19 2018 $
38.Dt SSH_CONFIG 5 38.Dt SSH_CONFIG 5
39.Os 39.Os
40.Sh NAME 40.Sh NAME
@@ -258,17 +258,9 @@ or
258Use the specified address on the local machine as the source address of 258Use the specified address on the local machine as the source address of
259the connection. 259the connection.
260Only useful on systems with more than one address. 260Only useful on systems with more than one address.
261Note that this option does not work if
262.Cm UsePrivilegedPort
263is set to
264.Cm yes .
265.It Cm BindInterface 261.It Cm BindInterface
266Use the address of the specified interface on the local machine as the 262Use the address of the specified interface on the local machine as the
267source address of the connection. 263source address of the connection.
268Note that this option does not work if
269.Cm UsePrivilegedPort
270is set to
271.Cm yes .
272.It Cm CanonicalDomains 264.It Cm CanonicalDomains
273When 265When
274.Cm CanonicalizeHostname 266.Cm CanonicalizeHostname
@@ -1603,17 +1595,6 @@ Presently, only
1603from OpenSSH 6.8 and greater support the 1595from OpenSSH 6.8 and greater support the
1604.Qq hostkeys@openssh.com 1596.Qq hostkeys@openssh.com
1605protocol extension used to inform the client of all the server's hostkeys. 1597protocol extension used to inform the client of all the server's hostkeys.
1606.It Cm UsePrivilegedPort
1607Specifies whether to use a privileged port for outgoing connections.
1608The argument must be
1609.Cm yes
1610or
1611.Cm no
1612(the default).
1613If set to
1614.Cm yes ,
1615.Xr ssh 1
1616must be setuid root.
1617.It Cm User 1598.It Cm User
1618Specifies the user to log in as. 1599Specifies the user to log in as.
1619This can be useful when a different user name is used on different machines. 1600This can be useful when a different user name is used on different machines.
diff --git a/sshconnect.c b/sshconnect.c
index 9fa95e1e3..3f45e0ba0 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sshconnect.c,v 1.301 2018/07/18 11:34:04 dtucker Exp $ */ 1/* $OpenBSD: sshconnect.c,v 1.302 2018/07/19 10:28:47 dtucker Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -330,10 +330,10 @@ check_ifaddrs(const char *ifname, int af, const struct ifaddrs *ifaddrs,
330#endif 330#endif
331 331
332/* 332/*
333 * Creates a (possibly privileged) socket for use as the ssh connection. 333 * Creates a ocket for use as the ssh connection.
334 */ 334 */
335static int 335static int
336ssh_create_socket(int privileged, struct addrinfo *ai) 336ssh_create_socket(struct addrinfo *ai)
337{ 337{
338 int sock, r; 338 int sock, r;
339 struct sockaddr_storage bindaddr; 339 struct sockaddr_storage bindaddr;
@@ -352,8 +352,7 @@ ssh_create_socket(int privileged, struct addrinfo *ai)
352 fcntl(sock, F_SETFD, FD_CLOEXEC); 352 fcntl(sock, F_SETFD, FD_CLOEXEC);
353 353
354 /* Bind the socket to an alternative local IP address */ 354 /* Bind the socket to an alternative local IP address */
355 if (options.bind_address == NULL && options.bind_interface == NULL && 355 if (options.bind_address == NULL && options.bind_interface == NULL)
356 !privileged)
357 return sock; 356 return sock;
358 357
359 if (options.bind_address != NULL) { 358 if (options.bind_address != NULL) {
@@ -492,9 +491,7 @@ timeout_connect(int sockfd, const struct sockaddr *serv_addr,
492/* 491/*
493 * Opens a TCP/IP connection to the remote server on the given host. 492 * Opens a TCP/IP connection to the remote server on the given host.
494 * The address of the remote host will be returned in hostaddr. 493 * The address of the remote host will be returned in hostaddr.
495 * If port is 0, the default port will be used. If needpriv is true, 494 * If port is 0, the default port will be used.
496 * a privileged port will be allocated to make the connection.
497 * This requires super-user privileges if needpriv is true.
498 * Connection_attempts specifies the maximum number of tries (one per 495 * Connection_attempts specifies the maximum number of tries (one per
499 * second). If proxy_command is non-NULL, it specifies the command (with %h 496 * second). If proxy_command is non-NULL, it specifies the command (with %h
500 * and %p substituted for host and port, respectively) to use to contact 497 * and %p substituted for host and port, respectively) to use to contact
@@ -503,14 +500,14 @@ timeout_connect(int sockfd, const struct sockaddr *serv_addr,
503static int 500static int
504ssh_connect_direct(struct ssh *ssh, const char *host, struct addrinfo *aitop, 501ssh_connect_direct(struct ssh *ssh, const char *host, struct addrinfo *aitop,
505 struct sockaddr_storage *hostaddr, u_short port, int family, 502 struct sockaddr_storage *hostaddr, u_short port, int family,
506 int connection_attempts, int *timeout_ms, int want_keepalive, int needpriv) 503 int connection_attempts, int *timeout_ms, int want_keepalive)
507{ 504{
508 int on = 1; 505 int on = 1;
509 int oerrno, sock = -1, attempt; 506 int oerrno, sock = -1, attempt;
510 char ntop[NI_MAXHOST], strport[NI_MAXSERV]; 507 char ntop[NI_MAXHOST], strport[NI_MAXSERV];
511 struct addrinfo *ai; 508 struct addrinfo *ai;
512 509
513 debug2("%s: needpriv %d", __func__, needpriv); 510 debug2("%s", __func__);
514 memset(ntop, 0, sizeof(ntop)); 511 memset(ntop, 0, sizeof(ntop));
515 memset(strport, 0, sizeof(strport)); 512 memset(strport, 0, sizeof(strport));
516 513
@@ -542,7 +539,7 @@ ssh_connect_direct(struct ssh *ssh, const char *host, struct addrinfo *aitop,
542 host, ntop, strport); 539 host, ntop, strport);
543 540
544 /* Create a socket for connecting. */ 541 /* Create a socket for connecting. */
545 sock = ssh_create_socket(needpriv, ai); 542 sock = ssh_create_socket(ai);
546 if (sock < 0) { 543 if (sock < 0) {
547 /* Any error is already output */ 544 /* Any error is already output */
548 errno = 0; 545 errno = 0;
@@ -592,12 +589,11 @@ ssh_connect_direct(struct ssh *ssh, const char *host, struct addrinfo *aitop,
592int 589int
593ssh_connect(struct ssh *ssh, const char *host, struct addrinfo *addrs, 590ssh_connect(struct ssh *ssh, const char *host, struct addrinfo *addrs,
594 struct sockaddr_storage *hostaddr, u_short port, int family, 591 struct sockaddr_storage *hostaddr, u_short port, int family,
595 int connection_attempts, int *timeout_ms, int want_keepalive, int needpriv) 592 int connection_attempts, int *timeout_ms, int want_keepalive)
596{ 593{
597 if (options.proxy_command == NULL) { 594 if (options.proxy_command == NULL) {
598 return ssh_connect_direct(ssh, host, addrs, hostaddr, port, 595 return ssh_connect_direct(ssh, host, addrs, hostaddr, port,
599 family, connection_attempts, timeout_ms, want_keepalive, 596 family, connection_attempts, timeout_ms, want_keepalive);
600 needpriv);
601 } else if (strcmp(options.proxy_command, "-") == 0) { 597 } else if (strcmp(options.proxy_command, "-") == 0) {
602 if ((ssh_packet_set_connection(ssh, 598 if ((ssh_packet_set_connection(ssh,
603 STDIN_FILENO, STDOUT_FILENO)) == NULL) 599 STDIN_FILENO, STDOUT_FILENO)) == NULL)
diff --git a/sshconnect.h b/sshconnect.h
index 05a1fb327..890d85733 100644
--- a/sshconnect.h
+++ b/sshconnect.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: sshconnect.h,v 1.34 2018/07/18 11:34:04 dtucker Exp $ */ 1/* $OpenBSD: sshconnect.h,v 1.35 2018/07/19 10:28:47 dtucker Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2000 Markus Friedl. All rights reserved. 4 * Copyright (c) 2000 Markus Friedl. All rights reserved.
@@ -34,7 +34,7 @@ struct addrinfo;
34struct ssh; 34struct ssh;
35 35
36int ssh_connect(struct ssh *, const char *, struct addrinfo *, 36int ssh_connect(struct ssh *, const char *, struct addrinfo *,
37 struct sockaddr_storage *, u_short, int, int, int *, int, int); 37 struct sockaddr_storage *, u_short, int, int, int *, int);
38void ssh_kill_proxy_command(void); 38void ssh_kill_proxy_command(void);
39 39
40void ssh_login(Sensitive *, const char *, struct sockaddr *, u_short, 40void ssh_login(Sensitive *, const char *, struct sockaddr *, u_short,