From 8d898c636c4070ede689a5a001b6b644187bda1c Mon Sep 17 00:00:00 2001 From: mkoch Date: Fri, 28 Nov 2003 22:01:29 +0000 Subject: 2003-11-28 Michael Koch * java/net/InetAddress.java (lookup): New method that doesnt lookup "0.0.0.0". (ImplLookup): Renamed from lookup. * java/net/natInetAddressNoNet.cc (ImplLookup): Renamed from lookup. * java/net/natInetAddressPosix.cc (ImplLookup): Renamed from lookup. * java/net/natInetAddressWin32.cc (ImplLookup): Renamed from lookup. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74026 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/net/InetAddress.java | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'libjava/java/net/InetAddress.java') diff --git a/libjava/java/net/InetAddress.java b/libjava/java/net/InetAddress.java index 8d09827655d..f2c14f8380e 100644 --- a/libjava/java/net/InetAddress.java +++ b/libjava/java/net/InetAddress.java @@ -564,8 +564,23 @@ public class InetAddress implements Serializable */ private static native byte[] aton (String host); - private static native InetAddress[] lookup (String hostname, - InetAddress addr, boolean all); + private static native InetAddress[] implLookup(String hostname, + InetAddress addr, + boolean all); + + private static InetAddress[] lookup (String hostname, + InetAddress addr, boolean all) + { + if (addr.equals(ANY_IF)) + { + byte[] zeros = { 0, 0, 0, 0 }; + InetAddress[] result = new InetAddress[1]; + result[0] = new InetAddress(zeros, "0.0.0.0"); + return result; + } + + return implLookup(hostname, addr, all); + } private static native int getFamily (byte[] address); -- cgit v1.2.1