upstream: the GatewayPorts vs -R listen address selection logic is
still confusing people, so add another comment explaining the special
handling of "localhost"; bz#3258
OpenBSD-Commit-ID: e6bf0f0fbf1c7092bf0dbd9c6eab105970b5b53a
diff --git a/channels.c b/channels.c
index 0f45aee..226ba7a 100644
--- a/channels.c
+++ b/channels.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: channels.c,v 1.394 2019/07/07 01:05:00 dtucker Exp $ */
+/* $OpenBSD: channels.c,v 1.395 2020/01/25 06:40:20 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -3356,7 +3356,12 @@
} else if (strcmp(listen_addr, "localhost") != 0 ||
strcmp(listen_addr, "127.0.0.1") == 0 ||
strcmp(listen_addr, "::1") == 0) {
- /* Accept localhost address when GatewayPorts=yes */
+ /*
+ * Accept explicit localhost address when
+ * GatewayPorts=yes. The "localhost" hostname is
+ * deliberately skipped here so it will listen on all
+ * available local address families.
+ */
addr = listen_addr;
}
} else if (strcmp(listen_addr, "127.0.0.1") == 0 ||