mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-06-08 21:59:10 +02:00
Merge bitcoin/bitcoin#26261: p2p: cleanup LookupIntern, Lookup and LookupHost
5c832c3820p2p, refactor: return `std::optional<CNetAddr>` in `LookupHost` (brunoerg)34bcdfc6a6p2p, refactor: return vector/optional<CService> in `Lookup` (brunoerg)7799eb125bp2p, refactor: return `std::vector<CNetAddr>` in `LookupHost` (brunoerg)5c1774a563p2p, refactor: return `std::vector<CNetAddr>` in `LookupIntern` (brunoerg) Pull request description: Continuation of #26078. To improve readability instead of returning a bool and passing stuff by reference, this PR changes: - `LookupHost` to return `std::vector<CNetAddr>` - `LookupHost` to return `std::optional<CNetAddr>` - `Lookup` to return `std::vector<CService>` - `Lookup` to return `std::optional<CService>`. - `LookupIntern` to return `std::vector<CNetAddr>` As discussed in #26078, it would be better to avoid using `optional` in some cases, but for specific `Lookup` and `LookupHost` functions it's necessary to use `optional` to verify if they were able to catch some data from their overloaded function. ACKs for top commit: achow101: ACK5c832c3820stickies-v: re-ACK5c832c3820- just addressing two nits, no other changes theStack: re-ACK5c832c3820Tree-SHA512: ea346fdc54463999646269bd600cd4a1590ef958001d2f0fc2be608ca51e1b4365efccca76dd4972b023e12fcc6e67d226608b0df7beb901bdeadd19948df840
This commit is contained in:
@@ -29,33 +29,29 @@ FUZZ_TARGET(netbase_dns_lookup)
|
||||
};
|
||||
|
||||
{
|
||||
std::vector<CNetAddr> resolved_addresses;
|
||||
if (LookupHost(name, resolved_addresses, max_results, allow_lookup, fuzzed_dns_lookup_function)) {
|
||||
for (const CNetAddr& resolved_address : resolved_addresses) {
|
||||
assert(!resolved_address.IsInternal());
|
||||
}
|
||||
const std::vector<CNetAddr> resolved_addresses{LookupHost(name, max_results, allow_lookup, fuzzed_dns_lookup_function)};
|
||||
for (const CNetAddr& resolved_address : resolved_addresses) {
|
||||
assert(!resolved_address.IsInternal());
|
||||
}
|
||||
assert(resolved_addresses.size() <= max_results || max_results == 0);
|
||||
}
|
||||
{
|
||||
CNetAddr resolved_address;
|
||||
if (LookupHost(name, resolved_address, allow_lookup, fuzzed_dns_lookup_function)) {
|
||||
assert(!resolved_address.IsInternal());
|
||||
const std::optional<CNetAddr> resolved_address{LookupHost(name, allow_lookup, fuzzed_dns_lookup_function)};
|
||||
if (resolved_address.has_value()) {
|
||||
assert(!resolved_address.value().IsInternal());
|
||||
}
|
||||
}
|
||||
{
|
||||
std::vector<CService> resolved_services;
|
||||
if (Lookup(name, resolved_services, default_port, allow_lookup, max_results, fuzzed_dns_lookup_function)) {
|
||||
for (const CNetAddr& resolved_service : resolved_services) {
|
||||
assert(!resolved_service.IsInternal());
|
||||
}
|
||||
const std::vector<CService> resolved_services{Lookup(name, default_port, allow_lookup, max_results, fuzzed_dns_lookup_function)};
|
||||
for (const CNetAddr& resolved_service : resolved_services) {
|
||||
assert(!resolved_service.IsInternal());
|
||||
}
|
||||
assert(resolved_services.size() <= max_results || max_results == 0);
|
||||
}
|
||||
{
|
||||
CService resolved_service;
|
||||
if (Lookup(name, resolved_service, default_port, allow_lookup, fuzzed_dns_lookup_function)) {
|
||||
assert(!resolved_service.IsInternal());
|
||||
const std::optional<CService> resolved_service{Lookup(name, default_port, allow_lookup, fuzzed_dns_lookup_function)};
|
||||
if (resolved_service.has_value()) {
|
||||
assert(!resolved_service.value().IsInternal());
|
||||
}
|
||||
}
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user