Description
Unix domain sockets.
Description
A Unix domain socket extension for the socket library
README.md
socket-unix
A Unix domain socket API for the socket library.
Usage
Creating the Unix domain socket:
import System.Socket
import System.Socket.Type.Stream
import System.Socket.Family.Unix
s <- socket :: IO (Socket Unix Stream Unix)
Creating the address for binding/connecting
address <- case socketAddressUnixPath "example.sock" of
Just addr -> pure addr
Nothing -> putStrLn "invalid pathname for socket"
Symlinks
Binding to a socket with a filename creates a socket in the filesystem, but does not unlink it after close
called. You should handle deleting links yourself.
Portability
Linux and OS X are supported.