aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorMichael Koch <konqueror@gmx.de>2004-11-17 07:09:57 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2004-11-17 07:09:57 +0000
commit879245b6b2b2305dda94c05009b431a007be5021 (patch)
tree6e34644be784f7f8c67bcab04e74d439de258383 /libjava
parent7c8347536fcd9cf01264aba9a3827915f26de05d (diff)
downloadgcc-879245b6b2b2305dda94c05009b431a007be5021.zip
gcc-879245b6b2b2305dda94c05009b431a007be5021.tar.gz
gcc-879245b6b2b2305dda94c05009b431a007be5021.tar.bz2
InetAddress.java (getCanonicalHostName): Support IPv6 addresses.
2004-11-17 Michael Koch <konqueror@gmx.de> * java/net/InetAddress.java (getCanonicalHostName): Support IPv6 addresses. From-SVN: r90793
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/net/InetAddress.java10
2 files changed, 13 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index dace13d..b8653ab 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-17 Michael Koch <konqueror@gmx.de>
+
+ * java/net/InetAddress.java (getCanonicalHostName):
+ Support IPv6 addresses.
+
2004-11-16 Michael Koch <konqueror@gmx.de>
* java/lang/Object.java: Added javadocs all over (merged from GNU
diff --git a/libjava/java/net/InetAddress.java b/libjava/java/net/InetAddress.java
index 24743cc..3306803 100644
--- a/libjava/java/net/InetAddress.java
+++ b/libjava/java/net/InetAddress.java
@@ -322,8 +322,14 @@ public class InetAddress implements Serializable
}
// Try to find the FDQN now
- // FIXME: This does not work with IPv6.
- InetAddress address = new Inet4Address(getAddress(), null);
+ InetAddress address;
+ byte[] ipaddr = getAddress();
+
+ if (ipaddr.length == 16)
+ address = new Inet6Address(getAddress(), null);
+ else
+ address = new Inet4Address(getAddress(), null);
+
return address.getHostName();
}