aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
authorMichael Koch <konqueror@gmx.de>2003-11-28 22:01:29 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2003-11-28 22:01:29 +0000
commitc3f322d80365c65f333b4a44a01c0d8fe7df4bb1 (patch)
treedc0afd9f7d8e5d2536d916eb5fc3e45fda6abd88 /libjava/java
parentbb6ed2ac9916c2a4a483b2a2f78a59a850335e9a (diff)
downloadgcc-c3f322d80365c65f333b4a44a01c0d8fe7df4bb1.zip
gcc-c3f322d80365c65f333b4a44a01c0d8fe7df4bb1.tar.gz
gcc-c3f322d80365c65f333b4a44a01c0d8fe7df4bb1.tar.bz2
2003-11-28 Michael Koch <konqueror@gmx.de>
* 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. From-SVN: r74026
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/net/InetAddress.java19
-rw-r--r--libjava/java/net/natInetAddressNoNet.cc2
-rw-r--r--libjava/java/net/natInetAddressPosix.cc5
-rw-r--r--libjava/java/net/natInetAddressWin32.cc5
4 files changed, 24 insertions, 7 deletions
diff --git a/libjava/java/net/InetAddress.java b/libjava/java/net/InetAddress.java
index 8d09827..f2c14f8 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);
diff --git a/libjava/java/net/natInetAddressNoNet.cc b/libjava/java/net/natInetAddressNoNet.cc
index 0374af1..266fb60 100644
--- a/libjava/java/net/natInetAddressNoNet.cc
+++ b/libjava/java/net/natInetAddressNoNet.cc
@@ -24,7 +24,7 @@ java::net::InetAddress::getFamily (jbyteArray bytes)
}
JArray<java::net::InetAddress*> *
-java::net::InetAddress::lookup (jstring, java::net::InetAddress *, jboolean)
+java::net::InetAddress::implLookup (jstring, java::net::InetAddress *, jboolean)
{
return NULL;
}
diff --git a/libjava/java/net/natInetAddressPosix.cc b/libjava/java/net/natInetAddressPosix.cc
index b97502e..f760b36 100644
--- a/libjava/java/net/natInetAddressPosix.cc
+++ b/libjava/java/net/natInetAddressPosix.cc
@@ -106,8 +106,9 @@ java::net::InetAddress::getFamily (jbyteArray bytes)
JArray<java::net::InetAddress*> *
-java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
- jboolean all)
+java::net::InetAddress::implLookup (jstring host,
+ java::net::InetAddress* iaddr,
+ jboolean all)
{
struct hostent *hptr = NULL;
#if defined (HAVE_GETHOSTBYNAME_R) || defined (HAVE_GETHOSTBYADDR_R)
diff --git a/libjava/java/net/natInetAddressWin32.cc b/libjava/java/net/natInetAddressWin32.cc
index 42c7d7d..d32f45c 100644
--- a/libjava/java/net/natInetAddressWin32.cc
+++ b/libjava/java/net/natInetAddressWin32.cc
@@ -50,8 +50,9 @@ java::net::InetAddress::getFamily (jbyteArray bytes)
JArray<java::net::InetAddress*> *
-java::net::InetAddress::lookup (jstring host, java::net::InetAddress* iaddr,
- jboolean all)
+java::net::InetAddress::implLookup (jstring host,
+ java::net::InetAddress* iaddr,
+ jboolean all)
{
struct hostent *hptr = NULL;
if (host != NULL)