1
0
mirror of https://github.com/facebookincubator/mvfst.git synced 2025-08-08 09:42:06 +03:00

Support setting cmsg per accepted socket

Summary:
For each `QuicServerTransport` created by `QuicServerWorker`, we are able to set the `cmsg`s to be sent whenever there's a write.

With this we can set things like TOS/SO_MARK per connection

Reviewed By: bschlinker

Differential Revision: D29313608

fbshipit-source-id: d60c97f65681086ae1079b6b95beade95158ec59
This commit is contained in:
Xintong Hu
2021-07-16 13:34:39 -07:00
committed by Facebook GitHub Bot
parent 09f96fb162
commit 02c50615a4
3 changed files with 28 additions and 0 deletions

View File

@@ -3845,5 +3845,16 @@ TEST_F(QuicTransportImplTest, DatagramCallbackDatagramAvailable) {
transport->driveReadCallbacks();
}
TEST_F(QuicTransportImplTest, Cmsgs) {
transport->setServerConnectionId();
folly::SocketOptionMap cmsgs;
cmsgs[{IPPROTO_IP, IP_TOS}] = 123;
EXPECT_CALL(*socketPtr, setCmsgs(_)).Times(1);
transport->setCmsgs(cmsgs);
EXPECT_CALL(*socketPtr, appendCmsgs(_)).Times(1);
transport->appendCmsgs(cmsgs);
}
} // namespace test
} // namespace quic