Minimalistic boilerplate for [UnixListener
] bindings.
Complies with the log facade.
Add this to your Cargo.toml
:
toml
[dependencies]
dusk-uds = "0.1"
```rust use dusk_uds::{Message, State, UnixDomainSocket}; use std::io::{Read, Write}; use std::sync::mpsc;
fn handler
// UnixListener implements Read + Write
socket.read_exact(&mut buf).unwrap();
socket.write_all(b"Some reply").unwrap();
// Ask the listener to stop after the next iteration
sender
.send(Message::ChangeState(State::ShouldQuit))
.unwrap();
}
fn main() { // Set the correct path // /dev/null will fail, unless your OS is broken :) let uds = UnixDomainSocket::from("/dev/null").bind(handler); if let Err(_e) = uds { // Report } } ```