#uds #unix #sockets

anysocket

Socket types that can be either Tcp or Unix Domain

1 unstable release

0.1.0 Aug 31, 2020

#6 in #uds

BSD-2-Clause

12KB
316 lines

This library exposes new types that wrap either TcpSocket or UnixSocket types.

This library compiles on Windows but doesn't support UnixSocket types.

Before:

if addr.starts_with("unix:") {
	let socket = UnixListener::bind(&addr["unix:".len() ..]).expect("binding");
	while let Ok(socket) = socket.accept() {
		// ...
	}
}
else {
	let socket = TcpListener::bind(addr).expect("binding");;
	while let Ok(socket) = socket.accept() {
		// ...
	}
}

After:

let socket = addr.bind_any().expect("binding");
while let Ok(socket) = socket.accept() {
	// ...
}

No runtime deps