fuzz: add CConnman::CreateNodeFromAcceptedSocket() to the tests

This commit is contained in:
Vasil Dimov 2021-04-15 14:01:52 +02:00
parent 50da7432ec
commit 91cbf4dbd8
No known key found for this signature in database
GPG Key ID: 54DF06F64B55CBBF
2 changed files with 17 additions and 0 deletions

View File

@ -178,6 +178,15 @@ FUZZ_TARGET(connman, .init = initialize_connman)
/*strDest=*/fuzzed_data_provider.ConsumeBool() ? nullptr : random_string.c_str(),
/*conn_type=*/conn_type,
/*use_v2transport=*/fuzzed_data_provider.ConsumeBool());
},
[&] {
connman.SetNetworkActive(fuzzed_data_provider.ConsumeBool());
const auto peer = ConsumeAddress(fuzzed_data_provider);
connman.CreateNodeFromAcceptedSocketPublic(
/*sock=*/CreateSock(AF_INET, SOCK_STREAM, IPPROTO_TCP),
/*permissions=*/ConsumeWeakEnum(fuzzed_data_provider, ALL_NET_PERMISSION_FLAGS),
/*addr_bind=*/ConsumeAddress(fuzzed_data_provider),
/*addr_peer=*/peer);
});
}
(void)connman.GetAddedNodeInfo(fuzzed_data_provider.ConsumeBool());

View File

@ -68,6 +68,14 @@ struct ConnmanTestMsg : public CConnman {
m_nodes.clear();
}
void CreateNodeFromAcceptedSocketPublic(std::unique_ptr<Sock> sock,
NetPermissionFlags permissions,
const CAddress& addr_bind,
const CAddress& addr_peer)
{
CreateNodeFromAcceptedSocket(std::move(sock), permissions, addr_bind, addr_peer);
}
void Handshake(CNode& node,
bool successfully_connected,
ServiceFlags remote_services,