interprocess
interprocess copied to clipboard
Multifunctional cross-platform interprocess communication toolkit for Rust.
**Describe the bug** When I attempted to create a LocalSocketName on my Linux machine and verify that it was supported, I got the following error. According to the panic output,...
**Describe the bug** Fails to compile on FreeBSD 13 amd64: ``` Compiling interprocess v1.1.1 (XXXXX/interprocess.git) error[E0432]: unresolved imports `libc::SIGPOLL`, `libc::SO_PASSCRED`, `libc::SO_PEERCRED`, `libc::SCM_CREDENTIALS`, `libc::ucred` --> src/os/unix/imports.rs:51:13 | 51 | SIGPOLL, |...
Now builds without error on macOS. Haven't tested on other OSs (might need conditional casting).
**Describe the bug** My attempt to make a `DuplexMsgPipeStream `is failing with "Error: The parameter is incorrect. (os error 87)". The failing call is to `CreateNamedPipeW`. **To Reproduce** ``` let...
**Is your feature request related to a problem? Please describe.** At the moment this crate only supports tokio, which is a bummer because I'd like to use async-std for my...
**Is your feature request related to a problem? Please describe.** It is impossible to share stream between BufReader and BufWriter. Rust std TcpStream have try_clone for this. **Describe the solution...
If you look closely when you read both the right and credentials here https://github.com/kotauskas/interprocess/blob/master/src/os/unix/udsocket/ancillary.rs#L348 and here https://github.com/kotauskas/interprocess/blob/master/src/os/unix/udsocket/ancillary.rs#L359-L364 you are only reading by using the element_offset, however that offset is always...
When encoding the credentials the wrong type is used in the structure https://github.com/kotauskas/interprocess/blob/master/src/os/unix/udsocket/ancillary.rs#L116 ```rust #[cfg(uds_ucred)] AncillaryData::Credentials { pid, uid, gid } => { cmsg_type_bytes = SCM_RIGHTS.to_ne_bytes(); cmsg_len += size_of::(); ```...
If you look at your encoding you will see that you encode the length of the payload as header + data length https://github.com/kotauskas/interprocess/blob/master/src/os/unix/udsocket/ancillary.rs#L94 ```rust let mut cmsg_len = size_of::(); //...
**Describe the bug** When using `tokio::select!` with one of the async expressions being `conn.read(&mut buf)`, it will cause `conn.write_all().await` to await forever when called in another handler. **To Reproduce** ```rust...