diff --git a/channels.c b/channels.c
index ea79dd3..1020071 100644
--- a/channels.c
+++ b/channels.c
@@ -2700,7 +2700,6 @@
  * "0.0.0.0"               -> wildcard v4/v6 if SSH_OLD_FORWARD_ADDR
  * "" (empty string), "*"  -> wildcard v4/v6
  * "localhost"             -> loopback v4/v6
- * "127.0.0.1" / "::1"     -> accepted even if gateway_ports isn't set
  */
 static const char *
 channel_fwd_bind_addr(const char *listen_addr, int *wildcardp,
@@ -2730,20 +2729,9 @@
 				    "\"%s\" overridden by server "
 				    "GatewayPorts", listen_addr);
 			}
-		} 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 */
-			addr = listen_addr;
 		}
-	} else if (strcmp(listen_addr, "127.0.0.1") == 0 ||
-	    strcmp(listen_addr, "::1") == 0) {
-		/*
-		 * If a specific IPv4/IPv6 localhost address has been
-		 * requested then accept it even if gateway_ports is in
-		 * effect. This allows the client to prefer IPv4 or IPv6.
-		 */
-		addr = listen_addr;
+		else if (strcmp(listen_addr, "localhost") != 0)
+			addr = listen_addr;
 	}
 	if (wildcardp != NULL)
 		*wildcardp = wildcard;
