On Tue, 3 Nov 2020 09:42:05 GMT, Daniel Fuchs <dfu...@openjdk.org> wrote:
>> I'm not sure, as the system properties don't affect implicit binding, but I >> would have liked to have a place to "explain" all aspects of binding of Unix >> domain sockets/server-sockets. Maybe, I could add a paragraph at the end, >> just as an aside or note. > > Oh - I was assuming that implicit binding & automatic binding were identical > - just had a different trigger. Maybe it would be worth spelling out that > implicit binding is **not** affected by the property then? For my own > curiosity - is it because automatic binding is performed by our java > implementation while implicit binding is performed by the system? These concepts aren't new by the way. "Implicit" binding is when you create a client socket and connect it without calling bind first. This is not possible with server sockets. "Automatic" binding is when you bind a server socket with a null address. All the above is the same for tcp and unix domain. tcp has more options relating to the interface and specifying a port = 0. These cases don't exist for unix domain. Just to add, one other point. It is also possible to automatically bind a client socket (either tcp or unix) (ie bind(null)) There is a small conceptual difference here between tcp and unix. With tcp you get a random port number, but with unix domain you get an unnamed socket address. ------------- PR: https://git.openjdk.java.net/jdk/pull/1021