diff options
author | Damien Miller <djm@mindrot.org> | 2008-02-10 22:25:24 +1100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2008-02-10 22:25:24 +1100 |
commit | 3de49f8951d8ea4401b0a8ec053fd51d6f309cbe (patch) | |
tree | 45b7de900695d492b53bdd9d74afdcccb35a6c3f /channels.c | |
parent | cb2fbb240718d7ca861f4d283711d6a54bc7a714 (diff) |
- djm@cvs.openbsd.org 2008/01/19 23:02:40
[channels.c]
When we added support for specified bind addresses for port forwards, we
added a quirk SSH_OLD_FORWARD_ADDR. There is a bug in our handling of
this for -L port forwards that causes the client to listen on both v4
and v6 addresses when connected to a server with this quirk, despite
having set 0.0.0.0 as a bind_address.
report and patch from Jan.Pechanec AT Sun.COM; ok dtucker@
Diffstat (limited to 'channels.c')
-rw-r--r-- | channels.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/channels.c b/channels.c index 25ebe1294..c766cc275 100644 --- a/channels.c +++ b/channels.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: channels.c,v 1.271 2007/12/27 14:22:08 dtucker Exp $ */ | 1 | /* $OpenBSD: channels.c,v 1.272 2008/01/19 23:02:40 djm 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 |
@@ -2385,7 +2385,7 @@ channel_setup_fwd_listener(int type, const char *listen_addr, u_short listen_por | |||
2385 | wildcard = 1; | 2385 | wildcard = 1; |
2386 | } else if (gateway_ports || is_client) { | 2386 | } else if (gateway_ports || is_client) { |
2387 | if (((datafellows & SSH_OLD_FORWARD_ADDR) && | 2387 | if (((datafellows & SSH_OLD_FORWARD_ADDR) && |
2388 | strcmp(listen_addr, "0.0.0.0") == 0) || | 2388 | strcmp(listen_addr, "0.0.0.0") == 0 && is_client == 0) || |
2389 | *listen_addr == '\0' || strcmp(listen_addr, "*") == 0 || | 2389 | *listen_addr == '\0' || strcmp(listen_addr, "*") == 0 || |
2390 | (!is_client && gateway_ports == 1)) | 2390 | (!is_client && gateway_ports == 1)) |
2391 | wildcard = 1; | 2391 | wildcard = 1; |