5 releases

0.2.1 Sep 29, 2024
0.2.0 Sep 19, 2024
0.1.3 Sep 16, 2024

#1615 in Network programming

Download history 498/week @ 2024-09-14 38/week @ 2024-09-21 140/week @ 2024-09-28 9/week @ 2024-10-05 1/week @ 2024-10-12

386 downloads per month

MIT/Apache

295KB
6K SLoC

socket2-plus

Build Cargo

This library is a superset of socket2 and it aims to provide some additional APIs currently missing from socket2. This library can be used as a drop-in replacement for socket2.

The following APIs are added:

  • recv_from_initialized to support recv_from with a fully initialized buffer.
  • recvmsg_initialized to support recvmsg and MsgHdrInit with initialized buffers.
  • Support Windows for recvmsg_initialized.
  • set_pktinfo_v4 and set_recv_pktinfo_v6 to support IP_PKTINFO and IPV6_PKTINFO socket options.

See documentation for more details.

See test cases send_to_recv_from_init and sent_to_recvmsg_init_v4.

Target platforms

All new APIs are built and tested on macOS, Linux and Windows. For other platforms, the new APIs are only partially or not available.

Forked from socket2

This version is forked from socket2 v0.5.7. We plan to rebase to the latest socket2 stable release regularly.

Minimum Supported Rust Version (MSRV)

socket2-plus uses 1.63.0 as MSRV. (same as socket2)

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0–8MB
~61K SLoC