Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

README.md

junixsocket

junixsocket is a Java/JNI library that allows the use of Unix Domain Sockets (AF_UNIX sockets) from Java.

Why it's cool

  • junixsocket is a small, modular library. Install only what you need.
  • In contrast to other implementations, junixsocket extends the Java Sockets API (java.net.Socket, java.net.SocketAddress, etc.)
  • Supports RMI over AF_UNIX.
  • Database support (connect to a local database server via Unix sockets and JDBC).
    • MySQL (provides a custom AFUNIXDatabaseSocketFactory for Connector/J).
    • PostgreSQL and others (provides a generic AFUNIXSocketFactory with a variety of configuration options).
  • Supports peer credentials.
  • Supports sending and receiving file descriptors.
  • Supports the abstract namespace on Linux.
  • Supports HTTP over unix socket (using NanoHTTPD)
  • Supports Java 7*, 8, 9, 10, 11, 12, 13, 14, 15.
  • Comes with pre-built native libraries for several operating systems and platforms, including macOS, Linux, FreeBSD, Solaris and Windows; custom libraries can be built using Maven.
  • Supports JPMS/Jigsaw modules.
  • Apache 2.0 licensed.

* (basic support for Java 7 only, no RMI, no Demos).

Quick links

Feature Comparison Matrix

Project License Java Sockets API Supports MySQL Supports RMI Comments
junixsocket Apache 2.0 Yes Yes Yes This project
netty Apache 2.0 Yes No No
JUDS LGPL No No No
J-BUDS LGPL No No No orphaned
gnu.net.local GPL with Classpath exception No No No orphaned

Licensing

junixsocket is released under the Apache 2.0 License.

Commercial support is available through Kohlschütter Search Intelligence.

Self-test

To verify that the software works as expected on your platform, you can run the selftest program, which is located in the "junixsocket-dist" distribution package:

java -jar junixsocket-selftest-VERSION-jar-with-dependencies.jar 

(with VERSION being the corresponding junixsocket version).

You can’t perform that action at this time.