diff options
Diffstat (limited to 'libjava/java/net')
-rw-r--r-- | libjava/java/net/ServerSocket.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libjava/java/net/ServerSocket.java b/libjava/java/net/ServerSocket.java index a691d20..597e641 100644 --- a/libjava/java/net/ServerSocket.java +++ b/libjava/java/net/ServerSocket.java @@ -221,14 +221,20 @@ public class ServerSocket throw new IllegalArgumentException ("Address type not supported"); InetSocketAddress tmp = (InetSocketAddress) endpoint; - + SecurityManager s = System.getSecurityManager (); if (s != null) s.checkListen (tmp.getPort ()); + InetAddress addr = tmp.getAddress(); + + // Initialize addr with 0.0.0.0. + if (addr == null) + addr = InetAddress.ANY_IF; + try { - impl.bind (tmp.getAddress (), tmp.getPort ()); + impl.bind(addr, tmp.getPort()); impl.listen(backlog); bound = true; } |