InetAddress.java (getCanonicalHostName): Support IPv6 addresses.
authorMichael Koch <konqueror@gmx.de>
Wed, 17 Nov 2004 07:09:57 +0000 (07:09 +0000)
committerMichael Koch <mkoch@gcc.gnu.org>
Wed, 17 Nov 2004 07:09:57 +0000 (07:09 +0000)
2004-11-17  Michael Koch  <konqueror@gmx.de>

* java/net/InetAddress.java (getCanonicalHostName):
Support IPv6 addresses.

From-SVN: r90793

libjava/ChangeLog
libjava/java/net/InetAddress.java

index dace13d9a53a2fb3fec3f813defb0937138a59d9..b8653ab3a38b1fce28c0ec978ffa9525d9dd341a 100644 (file)
@@ -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
index 24743cc1acced772c23b09e949c1039f075cb9b5..3306803188405ed3e06ab89a52cbfe078d29edaf 100644 (file)
@@ -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();
   }