Class UnixDomainSocket

    • Constructor Detail

      • UnixDomainSocket

        public UnixDomainSocket​(String path)
                         throws IOException
        Constructor
        Parameters:
        path - unix path
        Throws:
        IOException - if any error occurs
    • Method Detail

      • socket

        public static int socket​(int domain,
                                 int type,
                                 int protocol)
                          throws com.sun.jna.LastErrorException
        creates an endpoint for communication and returns a file descriptor that refers to that endpoint. see https://man7.org/linux/man-pages/man2/socket.2.html
        Parameters:
        domain - domain
        type - type
        protocol - protocol
        Returns:
        file descriptor
        Throws:
        com.sun.jna.LastErrorException - if any error occurs
      • connect

        public static int connect​(int sockfd,
                                  UnixDomainSocket.SockAddr sockaddr,
                                  int addrlen)
                           throws com.sun.jna.LastErrorException
        Connect socket
        Parameters:
        sockfd - file descriptor
        sockaddr - socket address
        addrlen - address length
        Returns:
        zero on success. -1 on error
        Throws:
        com.sun.jna.LastErrorException - if error occurs
      • recv

        public static int recv​(int fd,
                               byte[] buffer,
                               int count,
                               int flags)
                        throws com.sun.jna.LastErrorException
        Receive a message from a socket
        Parameters:
        fd - file descriptor
        buffer - buffer
        count - length
        flags - flag. see https://man7.org/linux/man-pages/man2/recvmsg.2.html
        Returns:
        zero on success. -1 on error
        Throws:
        com.sun.jna.LastErrorException - if error occurs
      • send

        public static int send​(int fd,
                               byte[] buffer,
                               int count,
                               int flags)
                        throws com.sun.jna.LastErrorException
        Send a message to a socket
        Parameters:
        fd - file descriptor
        buffer - buffer
        count - length
        flags - flag. see https://man7.org/linux/man-pages/man2/sendmsg.2.html
        Returns:
        zero on success. -1 on error
        Throws:
        com.sun.jna.LastErrorException - if error occurs
      • close

        public static int close​(int fd)
                         throws com.sun.jna.LastErrorException
        Close socket
        Parameters:
        fd - file descriptor
        Returns:
        zero on success. -1 on error
        Throws:
        com.sun.jna.LastErrorException - if error occurs
      • strerror

        public static String strerror​(int errno)
        return a description of the error code passed in the argument errnum.
        Parameters:
        errno - error pointer
        Returns:
        error description
      • isConnected

        public boolean isConnected()
        Overrides:
        isConnected in class Socket
      • setTcpNoDelay

        public void setTcpNoDelay​(boolean b)
        Overrides:
        setTcpNoDelay in class Socket
      • setKeepAlive

        public void setKeepAlive​(boolean b)
        Overrides:
        setKeepAlive in class Socket
      • setSoLinger

        public void setSoLinger​(boolean b,
                                int i)
        Overrides:
        setSoLinger in class Socket
      • setSoTimeout

        public void setSoTimeout​(int timeout)
        Overrides:
        setSoTimeout in class Socket