--- old/test/jdk/com/sun/nio/sctp/SctpChannel/SocketOptionTests.java 2020-05-20 18:05:25.068315332 -0700 +++ new/test/jdk/com/sun/nio/sctp/SctpChannel/SocketOptionTests.java 2020-05-20 18:05:24.680307882 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2009, 2020, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -162,28 +162,19 @@ debug("\t" + addr); } - /* retrieval of SCTP_PRIMARY_ADDR is not supported on Solaris */ - if ("SunOS".equals(osName)) { - /* For now do not set this option. There is a bug on Solaris 10 pre Update 5 - * where setting this option returns Invalid argument */ - //debug("Set SCTP_PRIMARY_ADDR with " + addrToSet); - //sc.setOption(SCTP_PRIMARY_ADDR, addrToSet); - return; - } else { /* Linux */ - SocketAddress primaryAddr = sc.getOption(SCTP_PRIMARY_ADDR); - System.out.println("SCTP_PRIMARY_ADDR returned: " + primaryAddr); - /* Verify that this is one of the remote addresses */ - check(remoteAddresses.contains(primaryAddr), "SCTP_PRIMARY_ADDR returned bogus address!"); - - for (Iterator it = remoteAddresses.iterator(); it.hasNext(); ) { - InetSocketAddress addrToSet = (InetSocketAddress) it.next(); - System.out.println("SCTP_PRIMARY_ADDR try set to: " + addrToSet); - sc.setOption(SCTP_PRIMARY_ADDR, addrToSet); - System.out.println("SCTP_PRIMARY_ADDR set to : " + addrToSet); - primaryAddr = sc.getOption(SCTP_PRIMARY_ADDR); - System.out.println("SCTP_PRIMARY_ADDR returned : " + primaryAddr); - check(addrToSet.equals(primaryAddr), "SCTP_PRIMARY_ADDR not set correctly"); - } + SocketAddress primaryAddr = sc.getOption(SCTP_PRIMARY_ADDR); + System.out.println("SCTP_PRIMARY_ADDR returned: " + primaryAddr); + /* Verify that this is one of the remote addresses */ + check(remoteAddresses.contains(primaryAddr), "SCTP_PRIMARY_ADDR returned bogus address!"); + + for (Iterator it = remoteAddresses.iterator(); it.hasNext(); ) { + InetSocketAddress addrToSet = (InetSocketAddress) it.next(); + System.out.println("SCTP_PRIMARY_ADDR try set to: " + addrToSet); + sc.setOption(SCTP_PRIMARY_ADDR, addrToSet); + System.out.println("SCTP_PRIMARY_ADDR set to : " + addrToSet); + primaryAddr = sc.getOption(SCTP_PRIMARY_ADDR); + System.out.println("SCTP_PRIMARY_ADDR returned : " + primaryAddr); + check(addrToSet.equals(primaryAddr), "SCTP_PRIMARY_ADDR not set correctly"); } sc.close(); peerChannel.close();