Breaking this into two parts :
1. Implementing socket options for AIX
2. DontFragmentTest failure
1. Implementing socket options for AIX
Unlike the linux, windows and macOS, AIX uses the default implementation for socket options such as ipDontFragmentSupported(), keepAliveOptionsSupported(), setTcpkeepAliveProbes, getTcpkeepAliveProbes, setQuickAck, getQuickAck and more, where it either returns false or exception. These options can be implemented on AIX with the supported flags like SO_PEERID, TCP_NODELAYACK is the equivalent AIX option for TCP_QUICKACK and IPPROTO_TCP, IP_DONTFRAG.
2. DontFragment test failure
DontFragmentTest.java fails with a runtime exception : “IP_DONTFRAGMENT should be supported” because the supportOptions doesn’t contain IP_DONTFRAGMENT flag.
Test Result of DontFragmentTest.java :
STDOUT:
STDERR:
java.lang.RuntimeException: IP_DONTFRAGMENT should be supported
at DontFragmentTest.checkSupported(DontFragmentTest.java:72)
at DontFragmentTest.testDatagramChannel(DontFragmentTest.java:89)
at DontFragmentTest.main(DontFragmentTest.java:48)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
at java.base/java.lang.Thread.run(Thread.java:1623)
JavaTest Message: Test threw exception: java.lang.RuntimeException: IP_DONTFRAGMENT should be supported
1. Implementing socket options for AIX
2. DontFragmentTest failure
1. Implementing socket options for AIX
Unlike the linux, windows and macOS, AIX uses the default implementation for socket options such as ipDontFragmentSupported(), keepAliveOptionsSupported(), setTcpkeepAliveProbes, getTcpkeepAliveProbes, setQuickAck, getQuickAck and more, where it either returns false or exception. These options can be implemented on AIX with the supported flags like SO_PEERID, TCP_NODELAYACK is the equivalent AIX option for TCP_QUICKACK and IPPROTO_TCP, IP_DONTFRAG.
2. DontFragment test failure
DontFragmentTest.java fails with a runtime exception : “IP_DONTFRAGMENT should be supported” because the supportOptions doesn’t contain IP_DONTFRAGMENT flag.
Test Result of DontFragmentTest.java :
STDOUT:
STDERR:
java.lang.RuntimeException: IP_DONTFRAGMENT should be supported
at DontFragmentTest.checkSupported(DontFragmentTest.java:72)
at DontFragmentTest.testDatagramChannel(DontFragmentTest.java:89)
at DontFragmentTest.main(DontFragmentTest.java:48)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
at java.base/java.lang.Thread.run(Thread.java:1623)
JavaTest Message: Test threw exception: java.lang.RuntimeException: IP_DONTFRAGMENT should be supported