--- a/jdk/test/java/nio/channels/SocketChannel/SocketOptionTests.java Sun Oct 03 19:39:25 2010 +0100
+++ b/jdk/test/java/nio/channels/SocketChannel/SocketOptionTests.java Mon Oct 04 14:17:36 2010 +0100
@@ -70,6 +70,15 @@
checkOption(sc, SO_KEEPALIVE, false);
sc.setOption(SO_SNDBUF, 128*1024); // can't check
sc.setOption(SO_RCVBUF, 256*1024); // can't check
+ int before, after;
+ before = sc.getOption(SO_SNDBUF);
+ after = sc.setOption(SO_SNDBUF, Integer.MAX_VALUE).getOption(SO_SNDBUF);
+ if (after < before)
+ throw new RuntimeException("setOption caused SO_SNDBUF to decrease");
+ before = sc.getOption(SO_RCVBUF);
+ after = sc.setOption(SO_RCVBUF, Integer.MAX_VALUE).getOption(SO_RCVBUF);
+ if (after < before)
+ throw new RuntimeException("setOption caused SO_RCVBUF to decrease");
sc.setOption(SO_REUSEADDR, true);
checkOption(sc, SO_REUSEADDR, true);
sc.setOption(SO_REUSEADDR, false);