mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-11-09 10:00:57 +03:00
use recvmsg on client
Summary: Use the new recvmsg api on the client to receive a packet from AsyncUDPSocket Reviewed By: mjoras Differential Revision: D18797963 fbshipit-source-id: 319d5c41f3a868e7b78947fdbcf2c411b6d7fbf0
This commit is contained in:
committed by
Facebook Github Bot
parent
edca9e794f
commit
02d473e8ec
@@ -1483,12 +1483,18 @@ class QuicClientTransportTest : public Test {
|
||||
folly::ByteRange data,
|
||||
bool writes = true) {
|
||||
ASSERT_TRUE(networkReadCallback);
|
||||
uint8_t* buf = nullptr;
|
||||
size_t len = 0;
|
||||
networkReadCallback->getReadBuffer((void**)&buf, &len);
|
||||
ASSERT_GT(len, data.size());
|
||||
memcpy(buf, data.data(), data.size());
|
||||
networkReadCallback->onDataAvailable(addr, data.size(), false);
|
||||
EXPECT_CALL(*sock, recvmsg(_, _))
|
||||
.WillOnce(Invoke([&](struct msghdr* msg, int) {
|
||||
DCHECK_GT(msg->msg_iovlen, 0);
|
||||
memcpy(msg->msg_iov[0].iov_base, data.data(), data.size());
|
||||
if (msg->msg_name) {
|
||||
socklen_t msg_len =
|
||||
addr.getAddress(static_cast<sockaddr_storage*>(msg->msg_name));
|
||||
msg->msg_namelen = msg_len;
|
||||
}
|
||||
return data.size();
|
||||
}));
|
||||
networkReadCallback->onNotifyDataAvailable();
|
||||
if (writes) {
|
||||
loopForWrites();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user