https://github.com/leshow/unix-udp-sock
Async Unix UDP sockets with more syscalls supported (sendmsg/sendmmsg/recvmsg/recvmmsg/..)
https://github.com/leshow/unix-udp-sock
Last synced: about 1 year ago
JSON representation
Async Unix UDP sockets with more syscalls supported (sendmsg/sendmmsg/recvmsg/recvmmsg/..)
- Host: GitHub
- URL: https://github.com/leshow/unix-udp-sock
- Owner: leshow
- Created: 2022-07-15T02:30:31.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-10-30T02:29:37.000Z (over 1 year ago)
- Last Synced: 2024-10-30T05:01:57.897Z (over 1 year ago)
- Language: Rust
- Homepage:
- Size: 60.5 KB
- Stars: 7
- Watchers: 2
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# unix-udp-sock
Largely based on `quinn-udp`, this adds async & sync support for additional syscalls:
UDP socket send:
- `send_to` [libc](https://linux.die.net/man/2/sendto)
- `send` [libc](https://linux.die.net/man/2/send)
- `send_mmsg` [libc](https://linux.die.net/man/2/sendmmsg)
- `send_msg` [libc](https://linux.die.net/man/2/sendmsg)
UDP socket recv:
- `recv_from` [libc](https://linux.die.net/man/2/recvfrom)
- `recv` [libc](https://linux.die.net/man/2/recv)
- `recv_mmsg` [libc](https://linux.die.net/man/2/recvmmsg)
- `recv_msg` [libc](https://linux.die.net/man/2/recvmsg)
In addition, `Transmits` has been altered to support `Vec`/`[u8]`/`Bytes`/`BytesMut`.
We can also select which interface to use with `src_ip: Some(Source::Interface(idx))`. You must know the index of the interface to use this.