Skip to content
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

Use correct length increment for IP_PKTINFO CMsg header #3065

Merged
merged 1 commit into from
Sep 14, 2022

Conversation

rzikm
Copy link
Member

@rzikm rzikm commented Sep 14, 2022

Description

On Arm32 devices, we encountered an issue where all attemts at connection timeout, closer investigation showed that all sendmmsg calls were failing with errno 22. I dug around a bit and it seems that the platform in question (Debian 10 on arm) was checking the expected length against IP_PKTINFO control header and failed the send. Using correct length for IPv4 and IPv6 solved the issue.

More info at dotnet/runtime#75493 (comment)

Testing

Tested on affected platform.

Documentation

N/A

@rzikm rzikm requested a review from a team as a code owner September 14, 2022 14:09
@rzikm rzikm changed the title Use correct length increment for msg_controllen Use correct length increment for IP_PKTINFO CMsg header Sep 14, 2022
Copy link
Member

@nibanks nibanks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very interesting! Good find! Do you know if there is an easy way to onboard tests (in MsQuic) for this scenario. I'd like to make sure we don't regress anything over time.

@nibanks nibanks added OS: Ubuntu Bug: Platform A code bug in platform/TLS specific code. labels Sep 14, 2022
@nibanks nibanks merged commit 2e95927 into microsoft:main Sep 14, 2022
@wfurt
Copy link
Member

wfurt commented Sep 14, 2022

nice. may be related to alignment...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug: Platform A code bug in platform/TLS specific code. OS: Ubuntu
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants