CSR :
|
Summary ------- Small update to Unix domain socket channel API. Problem ------- Following from the spec change in JDK-8247942, we need to make two small updates. 1. define a supported JDK specific system/networking property 2. make a small change to `java.net.UnixDomainSocketAddress` Solution -------- See specification Specification ------------- A system property called `jdk.nio.unixdomain.tmpdir` is defined by adding the following text to the Unix and Windows versions of `conf/net.properties` Unix ``` # # Default directory where automatically bound Unix domain server # sockets are stored. Sockets are automatically bound when bound # with a null address. # # On Unix the search order to determine this directory is: # # 1. System property jdk.nio.unixdomain.tmpdir # # 2. Networking property jdk.nio.unixdomain.tmpdir specified # in this file (effective default) # # 3. System property java.io.tmpdir # jdk.nio.unixdomain.tmpdir=/tmp ``` Windows ``` # # Default directory where automatically bound Unix domain server # sockets are stored. Sockets are automatically bound when bound # with a null address. # # The search order for the directory on Windows is: # # 1. System property jdk.nio.unixdomain.tmpdir # # 2. Networking property jdk.nio.unixdomain.tmpdir specified # in this file (not set by default) # # 3. The TEMP environment variable (the effective default) # # 4. The java.io.tmpdir system property # #jdk.nio.unixdomain.tmpdir= ``` The second change is the following update to `java.net.UnixDomainSocketAddress` ``` @@ -37,12 +38,12 @@ * A <a href="package-summary.html#unixdomain">Unix domain</a> socket address. * A Unix domain socket address encapsulates a file-system path that Unix domain sockets * bind or connect to. * * <p> An <a id="unnamed"></a><i>unnamed</i> {@code UnixDomainSocketAddress} has - * an empty path. The local address of a Unix domain socket that is automatically - * bound will be unnamed. + * an empty path. The local address of a {@link SocketChannel} to a Unix domain socket + * that is <i>automatically</i> or <i>implicitly</i> bound will be unnamed. * * <p> {@link Path} objects used to create instances of this class must be obtained * from the {@linkplain FileSystems#getDefault system-default} file system. * * @see java.nio.channels.SocketChannel ```