test/java/rmi/Naming/LookupIPv6.java

Print this page

        

*** 23,33 **** /* @test * @summary Ensure that java.rmi.Naming.lookup can handle URLs containing * IPv6 addresses. * @bug 4402708 ! * * @run main/othervm -Djava.net.preferIPv6Addresses=true LookupIPv6 */ import java.net.InetAddress; import java.net.Inet6Address; --- 23,34 ---- /* @test * @summary Ensure that java.rmi.Naming.lookup can handle URLs containing * IPv6 addresses. * @bug 4402708 ! * @library ../testlibrary ! * @build TestLibrary * @run main/othervm -Djava.net.preferIPv6Addresses=true LookupIPv6 */ import java.net.InetAddress; import java.net.Inet6Address;
*** 35,44 **** --- 36,47 ---- import java.rmi.Naming; import java.rmi.registry.LocateRegistry; import java.rmi.registry.Registry; public class LookupIPv6 { + private static final int REGISTRY_PORT = TestLibrary.getUnusedRandomPort(); + public static void main(String[] args) throws Exception { // use loopback IPv6 address to avoid lengthy socket connection delays String[] urls = { "rmi://[0000:0000:0000:0000:0000:0000:0000:0001]/foo", "//[0:0:0:0:0:0:0:1]:88/foo",
*** 65,78 **** InetAddress localAddr = InetAddress.getAllByName(null)[0]; if (localAddr instanceof Inet6Address) { System.out.println("IPv6 detected"); Registry reg; try { ! reg = LocateRegistry.createRegistry(Registry.REGISTRY_PORT); } catch (Exception ex) { reg = LocateRegistry.getRegistry(); } reg.rebind("foo", reg); ! Naming.lookup("rmi://[" + localAddr.getHostAddress() + "]/foo"); } } } --- 68,81 ---- InetAddress localAddr = InetAddress.getAllByName(null)[0]; if (localAddr instanceof Inet6Address) { System.out.println("IPv6 detected"); Registry reg; try { ! reg = LocateRegistry.createRegistry(REGISTRY_PORT); } catch (Exception ex) { reg = LocateRegistry.getRegistry(); } reg.rebind("foo", reg); ! Naming.lookup("rmi://[" + localAddr.getHostAddress() + "]" + ":" + REGISTRY_PORT + "/foo"); } } }