Skip to content

Added sendmmsg and recvmmsg (#574) (#575) #583

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

boris-n
Copy link
Contributor

@boris-n boris-n commented May 24, 2025

Added sendmmsg and recvmmsg methods for Android, Linux, FreeBSD, NetBSD, OpenBSD, Fuchsia and AIX. Note that Windows and MacOS do no support sendmmsg/recvmmsg.
Note that the timeout parameter in recvmmsg is buggy on Linux (see BUGS section in the recvmmsg manual page on Linux), but it should work on *BSD.
This also adds MMsgHdr and MMsgHdrMut structs (similar to MsgHdr and MsgHdrMut which are used for sendmsg/recvmsg). It is a bit nasty that I had to copy the methods of MsgHdr/MsgHdrMut to MMsgHdr/MMsgHdrMut but I don't see a better way.
I also added a simple unittest for sendmmsg and recvmmsg.

@boris-n boris-n force-pushed the sendmmsg-recvmmsg branch 8 times, most recently from af8e2a8 to fb33457 Compare May 25, 2025 14:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant