@@ -8,22 +8,38 @@ These APIs are not implemented on musl
8
8
9
9
Upstream-Status: Pending
10
10
Signed-off-by: Khem Raj <
[email protected] >
11
- ---
11
+ --- a/net/dns/dns_config_service_linux.cc
12
+ +++ b/net/dns/dns_config_service_linux.cc
13
+ @@ -414,12 +414,6 @@ class DnsConfigServiceLinux::ConfigReade
14
+ base::ScopedBlockingCall scoped_blocking_call(
15
+ FROM_HERE, base::BlockingType::MAY_BLOCK);
16
+
17
+ - std::unique_ptr<struct __res_state> res = resolv_reader_->GetResState();
18
+ - if (res) {
19
+ - dns_config_ = ConvertResStateToDnsConfig(*res.get());
20
+ - resolv_reader_->CloseResState(res.get());
21
+ - }
22
+ -
23
+ UMA_HISTOGRAM_BOOLEAN("Net.DNS.DnsConfig.Resolv.Read",
24
+ dns_config_.has_value());
25
+ if (!dns_config_.has_value())
12
26
--- a/net/dns/dns_reloader.cc
13
27
+++ b/net/dns/dns_reloader.cc
14
- @@ -4,8 +4,7 @@
28
+ @@ -4,9 +4,8 @@
15
29
16
30
#include "net/dns/dns_reloader.h"
17
31
18
32
- #if defined(OS_POSIX) && !defined(OS_APPLE) && !defined(OS_OPENBSD) && \
19
33
- !defined(OS_ANDROID) && !defined(OS_FUCHSIA)
34
+ -
20
35
+ #if defined(__GLIBC__)
21
-
36
+ +
22
37
#include <resolv.h>
23
38
39
+ #include "base/lazy_instance.h"
24
40
--- a/net/dns/host_resolver_manager.cc
25
41
+++ b/net/dns/host_resolver_manager.cc
26
- @@ -2720 ,8 +2720 ,7 @@ HostResolverManager::HostResolverManager
42
+ @@ -2902 ,8 +2902 ,7 @@ HostResolverManager::HostResolverManager
27
43
NetworkChangeNotifier::AddConnectionTypeObserver(this);
28
44
if (system_dns_config_notifier_)
29
45
system_dns_config_notifier_->AddObserver(this);
45
61
DnsReloaderMaybeReload();
46
62
#endif
47
63
absl::optional<AddressInfo> ai;
48
- --- a/net/dns/dns_config_service_linux.cc
49
- +++ b/net/dns/dns_config_service_linux.cc
50
- @@ -486,20 +486,11 @@ class DnsConfigServiceLinux::ConfigReade
64
+ --- a/net/dns/public/resolv_reader.cc
65
+ +++ b/net/dns/public/resolv_reader.cc
66
+ @@ -20,19 +20,10 @@
67
+ namespace net {
51
68
52
- std::unique_ptr<struct __res_state>
53
- DnsConfigServiceLinux::ResolvReader::GetResState() {
69
+ std::unique_ptr<struct __res_state> ResolvReader::GetResState() {
54
70
- auto res = std::make_unique<struct __res_state>();
55
71
- memset(res.get(), 0, sizeof(struct __res_state));
56
72
-
63
79
+ return nullptr;
64
80
}
65
81
66
- void DnsConfigServiceLinux::ResolvReader::CloseResState(
67
- struct __res_state* res) {
82
+ void ResolvReader::CloseResState(struct __res_state* res) {
68
83
- res_nclose(res);
69
84
}
70
85
71
- DnsConfigServiceLinux::DnsConfigServiceLinux()
86
+ absl::optional<std::vector<IPEndPoint>> GetNameservers(
0 commit comments