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

Add sendSizeAndMsgWithTimeout to send size and data in a single call #4985

Merged
merged 3 commits into from Feb 10, 2017

Conversation

@rgacogne
Copy link
Member

@rgacogne rgacogne commented Feb 8, 2017

Short description

sendSizeAndMsgWithTimeout() groups the sending of the size as a uint16_t in network byte order and the corresponding data in a single sendmsg() syscall, handling short writes and timeouts if needed. It also supports optional source address and interface number. This PR makes use of this new function in the Remote Logger (protobuf) and dnsdist TCP workers.
It also adds TCP Fast Open support toward backends in dnsdist, if the MSG_FASTOPEN flag is available.

Checklist

I have:

  • read the CONTRIBUTING.md document
  • compiled and tested this code
  • included documentation (including possible behaviour changes)
  • documented the code
  • added regression tests
  • added unit tests
@ahupowerdns ahupowerdns merged commit 276ec09 into PowerDNS:master Feb 10, 2017
1 check passed
1 check passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@rgacogne rgacogne deleted the rgacogne:write-single-syscall branch Feb 10, 2017
@rgacogne rgacogne mentioned this pull request Jul 6, 2017
2 of 6 tasks complete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants