Loading DnsResolver.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ bool resolv_init(const ResolverNetdCallbacks* callbacks) { android::base::InitLogging(/*argv=*/nullptr); LOG(INFO) << __func__ << ": Initializing resolver"; const bool isDebug = isUserDebugBuild(); const bool isDebug = isDebuggable(); resolv_set_log_severity(isDebug ? android::base::INFO : android::base::WARNING); doh_init_logger(isDebug ? DOH_LOG_LEVEL_INFO : DOH_LOG_LEVEL_WARN); using android::net::gApiLevel; Loading DnsResolverService.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -222,8 +222,13 @@ binder_status_t DnsResolverService::dump(int fd, const char** args, uint32_t num // Locking happens in PrivateDnsConfiguration and res_* functions. ENFORCE_NETWORK_STACK_PERMISSIONS(); int timeout_count = 0; int res = gDnsResolv->resolverCtrl.getResolverInfo(netId, servers, domains, tlsServers, params, stats, wait_for_pending_req_timeout_count); stats, &timeout_count); // Due to historical reason, wait_for_pending_req_timeout_count couldn't be // an int but a vector. See aosp/858377 for more details. wait_for_pending_req_timeout_count->clear(); wait_for_pending_req_timeout_count->push_back(timeout_count); return statusFromErrcode(res); } Loading Experiments.h +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ class Experiments { "parallel_lookup_sleep_time", "retransmission_time_interval", "retry_count", "skip_4a_query_on_v6_linklocal_addr", "sort_nameservers", }; // This value is used in updateInternal as the default value if any flags can't be found. Loading PrivateDnsConfiguration.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -193,6 +193,7 @@ PrivateDnsStatus PrivateDnsConfiguration::getStatusLocked(unsigned netId) const } NetworkDnsServerSupportReported PrivateDnsConfiguration::getStatusForMetrics(unsigned netId) const { const auto networkType = resolv_get_network_types_for_net(netId); std::lock_guard guard(mPrivateDnsLock); if (mPrivateDnsModes.find(netId) == mPrivateDnsModes.end()) { Loading @@ -202,7 +203,7 @@ NetworkDnsServerSupportReported PrivateDnsConfiguration::getStatusForMetrics(uns const PrivateDnsStatus status = getStatusLocked(netId); NetworkDnsServerSupportReported event = {}; event.set_network_type(resolv_get_network_types_for_net(netId)); event.set_network_type(networkType); event.set_private_dns_modes(convertEnumType(status.mode)); if (const auto it = mUnorderedDnsTracker.find(netId); it != mUnorderedDnsTracker.end()) { Loading ResolverController.cpp +7 −10 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ void sendNat64PrefixEvent(const Dns64Configuration::Nat64PrefixInfo& args) { int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<std::string>* domains, res_params* params, std::vector<android::net::ResolverStats>* stats, std::vector<int32_t>* wait_for_pending_req_timeout_count) { int* wait_for_pending_req_timeout_count) { using aidl::android::net::IDnsResolver; using android::net::ResolverStats; static_assert(ResolverStats::STATS_SUCCESSES == IDnsResolver::RESOLVER_STATS_SUCCESSES && Loading @@ -101,11 +101,9 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st domains->clear(); *params = res_params{}; stats->clear(); wait_for_pending_req_timeout_count->clear(); int res_wait_for_pending_req_timeout_count; int revision_id = android_net_res_stats_get_info_for_net( netId, &nscount, res_servers, &dcount, res_domains, params, res_stats, &res_wait_for_pending_req_timeout_count); int revision_id = android_net_res_stats_get_info_for_net(netId, &nscount, res_servers, &dcount, res_domains, params, res_stats, wait_for_pending_req_timeout_count); // If the netId is unknown (which can happen for valid net IDs for which no DNS servers have // yet been configured), there is no revision ID. In this case there is no data to return. Loading Loading @@ -151,7 +149,6 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st domains->push_back(res_domains[i]); } wait_for_pending_req_timeout_count->push_back(res_wait_for_pending_req_timeout_count); return 0; } Loading Loading @@ -249,7 +246,7 @@ int ResolverController::getResolverInfo(int32_t netId, std::vector<std::string>* std::vector<std::string>* domains, std::vector<std::string>* tlsServers, std::vector<int32_t>* params, std::vector<int32_t>* stats, std::vector<int32_t>* wait_for_pending_req_timeout_count) { int* wait_for_pending_req_timeout_count) { using aidl::android::net::IDnsResolver; using android::net::ResolverStats; res_params res_params; Loading Loading @@ -303,7 +300,7 @@ void ResolverController::dump(DumpWriter& dw, unsigned netId) { std::vector<std::string> domains; res_params params = {}; std::vector<ResolverStats> stats; std::vector<int32_t> wait_for_pending_req_timeout_count(1, 0); int wait_for_pending_req_timeout_count = 0; time_t now = time(nullptr); int rv = getDnsInfo(netId, &servers, &domains, ¶ms, &stats, &wait_for_pending_req_timeout_count); Loading Loading @@ -370,7 +367,7 @@ void ResolverController::dump(DumpWriter& dw, unsigned netId) { } dw.decIndent(); } dw.println("Concurrent DNS query timeout: %d", wait_for_pending_req_timeout_count[0]); dw.println("Concurrent DNS query timeout: %d", wait_for_pending_req_timeout_count); resolv_netconfig_dump(dw, netId); } dw.decIndent(); Loading Loading
DnsResolver.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ bool resolv_init(const ResolverNetdCallbacks* callbacks) { android::base::InitLogging(/*argv=*/nullptr); LOG(INFO) << __func__ << ": Initializing resolver"; const bool isDebug = isUserDebugBuild(); const bool isDebug = isDebuggable(); resolv_set_log_severity(isDebug ? android::base::INFO : android::base::WARNING); doh_init_logger(isDebug ? DOH_LOG_LEVEL_INFO : DOH_LOG_LEVEL_WARN); using android::net::gApiLevel; Loading
DnsResolverService.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -222,8 +222,13 @@ binder_status_t DnsResolverService::dump(int fd, const char** args, uint32_t num // Locking happens in PrivateDnsConfiguration and res_* functions. ENFORCE_NETWORK_STACK_PERMISSIONS(); int timeout_count = 0; int res = gDnsResolv->resolverCtrl.getResolverInfo(netId, servers, domains, tlsServers, params, stats, wait_for_pending_req_timeout_count); stats, &timeout_count); // Due to historical reason, wait_for_pending_req_timeout_count couldn't be // an int but a vector. See aosp/858377 for more details. wait_for_pending_req_timeout_count->clear(); wait_for_pending_req_timeout_count->push_back(timeout_count); return statusFromErrcode(res); } Loading
Experiments.h +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ class Experiments { "parallel_lookup_sleep_time", "retransmission_time_interval", "retry_count", "skip_4a_query_on_v6_linklocal_addr", "sort_nameservers", }; // This value is used in updateInternal as the default value if any flags can't be found. Loading
PrivateDnsConfiguration.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -193,6 +193,7 @@ PrivateDnsStatus PrivateDnsConfiguration::getStatusLocked(unsigned netId) const } NetworkDnsServerSupportReported PrivateDnsConfiguration::getStatusForMetrics(unsigned netId) const { const auto networkType = resolv_get_network_types_for_net(netId); std::lock_guard guard(mPrivateDnsLock); if (mPrivateDnsModes.find(netId) == mPrivateDnsModes.end()) { Loading @@ -202,7 +203,7 @@ NetworkDnsServerSupportReported PrivateDnsConfiguration::getStatusForMetrics(uns const PrivateDnsStatus status = getStatusLocked(netId); NetworkDnsServerSupportReported event = {}; event.set_network_type(resolv_get_network_types_for_net(netId)); event.set_network_type(networkType); event.set_private_dns_modes(convertEnumType(status.mode)); if (const auto it = mUnorderedDnsTracker.find(netId); it != mUnorderedDnsTracker.end()) { Loading
ResolverController.cpp +7 −10 Original line number Diff line number Diff line Loading @@ -78,7 +78,7 @@ void sendNat64PrefixEvent(const Dns64Configuration::Nat64PrefixInfo& args) { int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<std::string>* domains, res_params* params, std::vector<android::net::ResolverStats>* stats, std::vector<int32_t>* wait_for_pending_req_timeout_count) { int* wait_for_pending_req_timeout_count) { using aidl::android::net::IDnsResolver; using android::net::ResolverStats; static_assert(ResolverStats::STATS_SUCCESSES == IDnsResolver::RESOLVER_STATS_SUCCESSES && Loading @@ -101,11 +101,9 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st domains->clear(); *params = res_params{}; stats->clear(); wait_for_pending_req_timeout_count->clear(); int res_wait_for_pending_req_timeout_count; int revision_id = android_net_res_stats_get_info_for_net( netId, &nscount, res_servers, &dcount, res_domains, params, res_stats, &res_wait_for_pending_req_timeout_count); int revision_id = android_net_res_stats_get_info_for_net(netId, &nscount, res_servers, &dcount, res_domains, params, res_stats, wait_for_pending_req_timeout_count); // If the netId is unknown (which can happen for valid net IDs for which no DNS servers have // yet been configured), there is no revision ID. In this case there is no data to return. Loading Loading @@ -151,7 +149,6 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st domains->push_back(res_domains[i]); } wait_for_pending_req_timeout_count->push_back(res_wait_for_pending_req_timeout_count); return 0; } Loading Loading @@ -249,7 +246,7 @@ int ResolverController::getResolverInfo(int32_t netId, std::vector<std::string>* std::vector<std::string>* domains, std::vector<std::string>* tlsServers, std::vector<int32_t>* params, std::vector<int32_t>* stats, std::vector<int32_t>* wait_for_pending_req_timeout_count) { int* wait_for_pending_req_timeout_count) { using aidl::android::net::IDnsResolver; using android::net::ResolverStats; res_params res_params; Loading Loading @@ -303,7 +300,7 @@ void ResolverController::dump(DumpWriter& dw, unsigned netId) { std::vector<std::string> domains; res_params params = {}; std::vector<ResolverStats> stats; std::vector<int32_t> wait_for_pending_req_timeout_count(1, 0); int wait_for_pending_req_timeout_count = 0; time_t now = time(nullptr); int rv = getDnsInfo(netId, &servers, &domains, ¶ms, &stats, &wait_for_pending_req_timeout_count); Loading Loading @@ -370,7 +367,7 @@ void ResolverController::dump(DumpWriter& dw, unsigned netId) { } dw.decIndent(); } dw.println("Concurrent DNS query timeout: %d", wait_for_pending_req_timeout_count[0]); dw.println("Concurrent DNS query timeout: %d", wait_for_pending_req_timeout_count); resolv_netconfig_dump(dw, netId); } dw.decIndent(); Loading