Hi Vyom, what about my suggestions for renaming?
src/jdk.net/macosx/classes/jdk/net/UnixSocketOptions.java -> src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java src/jdk.net/macosx/native/libextnet/UnixSocketOptions.c -> src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c This would be more consistent as we have: src/jdk.net/linux/native/libextnet/LinuxSocketOptions.c src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java ... src/jdk.net/solaris/native/libextnet/SolarisSocketOptions.c src/jdk.net/solaris/classes/jdk/net/SolarisSocketOptions.java Thanks Christoph > -----Original Message----- > From: net-dev [mailto:net-dev-boun...@openjdk.java.net] On Behalf Of > vyom tewari > Sent: Montag, 23. April 2018 14:06 > To: Chris Hegarty <chris.hega...@oracle.com>; OpenJDK Network Dev list > <net-dev@openjdk.java.net> > Subject: Re: RFR:8194298 Add support for per Socket configuration of TCP > keepalive > > Hi, > > Please find the latest > webrev(http://cr.openjdk.java.net/~vtewari/8194298/webrev0.1/index.htm > l). > I incorporated most of the review comments. > > Thanks, > > Vyom > > > On Wednesday 18 April 2018 07:44 PM, Chris Hegarty wrote: > > Vyom, > > > > On 13/04/18 10:50, vyom tewari wrote: > >> Hi All, > >> > >> Please review the below code. > >> > >> BugId : https://bugs.openjdk.java.net/browse/JDK-8194298 > >> > >> webrev : > >> http://cr.openjdk.java.net/~vtewari/8194298/webrev0.0/index.html > > > > Here is some proposed wording for the JDK-specific extended socket > > options specification. > > > > 1) Uses a consistent style across all three new options, > > and is in line with existing extended options. > > 2) Renamed the options slightly, to improve readability > > ( they don't need to conform to the native option names ) > > 3) Reordered them so the build up is more logical > > 4) Removed inheritance from server sockets > > 5) Added standard verbiage about being "platform and > > system dependent > > 6) Added typical values. I think this is useful, as it > > gives an idea to the developer, but maybe it could be > > misleading. Can be dropped if there are concerns. > > > > Can you please confirm that this is accurate, and also > > will leave enough "wriggle" room when additional platform > > support is added. > > > > --- > > > > /** > > * Keep-Alive idle time. > > * > > * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE > > * SO_KEEPALIVE} option is enabled, TCP probes a connection that > > has been > > * idle for some amount of time. The default value for this idle > > period is > > * system dependent, but is typically 2 hours. The {@code > > TCP_KEEPIDLE} > > * option can be used to affect this value for a given socket. > > * > > * <p> The value of this socket option is an {@code Integer} that > > is the > > * number of seconds of idle time before keep-alive initiates a > > probe. The > > * socket option is specific to stream-oriented sockets using the > > TCP/IP > > * protocol. The exact semantics of this socket option are socket > > type and > > * system dependent. > > * > > * @since 11 > > */ > > public static final SocketOption<Integer> TCP_KEEPIDLE > > = new ExtSocketOption<Integer>("TCP_KEEPIDLE", > > Integer.class); > > > > /** > > * Keep-Alive retransmission interval time. > > * > > * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE > > * SO_KEEPALIVE} option is enabled, TCP probes a connection that > > has been > > * idle for some amount of time. If the remote system does not > > respond to a > > * keep-alive probe, TCP retransmits the probe after some amount > > of time. > > * The default value for this retransmition interval is system > > dependent, > > * but is typically 75 seconds. The {@code TCP_KEEPINTERVAL} > > option can be > > * used to affect this value for a given socket. > > * > > * <p> The value of this socket option is an {@code Integer} that > > is the > > * number of seconds to wait before retransmitting a keep-alive > > probe. The > > * socket option is specific to stream-oriented sockets using the > > TCP/IP > > * protocol. The exact semantics of this socket option are socket > > type and > > * system dependent. > > * > > * @since 11 > > */ > > public static final SocketOption<Integer> TCP_KEEPINTERVAL > > = new ExtSocketOption<Integer>("TCP_KEEPINTERVAL", > > Integer.class); > > > > /** > > * Keep-Alive retransmission maximum limit. > > * > > * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE > > * SO_KEEPALIVE} option is enabled, TCP probes a connection that > > has been > > * idle for some amount of time. If the remote system does not > > respond to a > > * keep-alive probe, TCP retransmits the probe a certain number of > > times > > * before a connection is considered to be broken. The default > > value for > > * this keep-alive probe retransmit limit is system dependent, but is > > * typically 8. The {@code TCP_KEEPCOUNT} option can be used to > > affect > > * this value for a given socket. > > * > > * <p> The value of this socket option is an {@code Integer} that > > is the > > * maximum number of keep-alive probes to be sent. The socket > > option is > > * specific to stream-oriented sockets using the TCP/IP protocol. > > The exact > > * semantics of this socket option are socket type and system > > dependent. > > * > > * @since 11 > > */ > > public static final SocketOption<Integer> TCP_KEEPCOUNT > > = new ExtSocketOption<Integer>("TCP_KEEPCOUNT", > > Integer.class); > > > > -Chris.