Class UnixSocketAddress

java.lang.Object
java.net.SocketAddress
jnr.unixsocket.UnixSocketAddress
All Implemented Interfaces:
Serializable

public class UnixSocketAddress extends SocketAddress
This class represents an AF_UNIX-style socket address. On Linux, it supports the platform-specific abstract name space.

Using an abstract name space is denoted by the socket path starting with a NUL byte. Sockets in abstract name space have no entry in the file system. When linux performs autobind, it constructs the resulting path with a leading NUL, followed by a unique 5-digit hexadecimal number.

See Also:
  • Field Details

  • Constructor Details

    • UnixSocketAddress

      UnixSocketAddress()
    • UnixSocketAddress

      public UnixSocketAddress(File path)
    • UnixSocketAddress

      public UnixSocketAddress(String path)
  • Method Details

    • getStruct

      SockAddrUnix getStruct()
    • length

      int length()
    • path

      public String path()
      Retrieves the path.
      Returns:
      The path of this AF_UNIX address. Note: On Linux, can contain a leading NUL byte, if this address resides in abstract namespace.
    • humanReadablePath

      public String humanReadablePath()
      Returns a human readable path. On Linux, AF_UNIX sockets can be bound/connected in abstract namespace. This is denoted by a leading NUL byte in the path. In order to be properly displayed, this method returns a path prefixed by '@' like netstat, lsof an similar tools.
      Returns:
      The human readable path of this address.
    • toString

      public String toString()
      Retrieves a human readable description of this address.
      Overrides:
      toString in class Object
      Returns:
      The human readable description of this address.
    • equals

      public boolean equals(Object _other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • writeObject

      private void writeObject(ObjectOutputStream o) throws IOException
      Throws:
      IOException
    • readObject

      private void readObject(ObjectInputStream o) throws IOException, ClassNotFoundException
      Throws:
      IOException
      ClassNotFoundException