summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordjm <djm@openbsd.org>2014-02-15 23:05:36 +0000
committerdjm <djm@openbsd.org>2014-02-15 23:05:36 +0000
commit066cb816370ac941b2efcf3944fb65f693fcdf05 (patch)
tree96d38d16659015e68501b2ce68f44c786ac63bc8
parentDon't need keeps in SYNOPSIS for .mdoc. (diff)
downloadwireguard-openbsd-066cb816370ac941b2efcf3944fb65f693fcdf05.tar.xz
wireguard-openbsd-066cb816370ac941b2efcf3944fb65f693fcdf05.zip
avoid spurious "getsockname failed: Bad file descriptor" errors in ssh -W;
bz#2200, debian#738692 via Colin Watson; ok dtucker@
-rw-r--r--usr.bin/ssh/channels.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/ssh/channels.c b/usr.bin/ssh/channels.c
index 44ce806e1e8..385a16db4df 100644
--- a/usr.bin/ssh/channels.c
+++ b/usr.bin/ssh/channels.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: channels.c,v 1.329 2014/01/31 16:39:19 tedu Exp $ */
+/* $OpenBSD: channels.c,v 1.330 2014/02/15 23:05:36 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1378,7 +1378,7 @@ port_open_helper(Channel *c, char *rtype)
int direct;
char buf[1024];
char *local_ipaddr = get_local_ipaddr(c->sock);
- int local_port = get_sock_port(c->sock, 1);
+ int local_port = c->sock == -1 ? 65536 : get_sock_port(c->sock, 1);
char *remote_ipaddr = get_peer_ipaddr(c->sock);
int remote_port = get_peer_port(c->sock);