diff options
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 6 | ||||
-rw-r--r-- | libjava/java/net/ServerSocket.java | 10 |
2 files changed, 14 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 4c81138..ad2a815 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2003-12-25 Michael Koch <konqueror@gmx.de> + + * java/net/ServerSocket.java bind(): + If InetSocketAddress.getAddress() returns "null" use "0.0.0.0" as + address to bind to. + 2003-12-23 Guilhem Lavaux <guilhem@kaffe.org> * java/io/ObjectInputStream.java 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; } |