aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2020-05-26 10:55:13 +0000
committerLorenzo Colitti <lorenzo@google.com>2020-05-26 15:17:18 +0000
commit35777880fd29e64edf28c337fa88b733d815a50a (patch)
treef45af1edeef6afea215287d7d54f46a4147fdad1
parent0d234b06f193180696d5d558d87ff928a2597a70 (diff)
downloadDnsResolver-35777880fd29e64edf28c337fa88b733d815a50a.tar.gz
Style fixes in the external pref64 support.
- Address a code review comment to pass a variable by reference instead of by pointer. - Add two missed EXCLUDES() thread-safety annotations. - Make "dumpsys dnsresolver" report externally-set prefixes differently from discovered prefixes. Bug: 156914456 Test: existing unit tests pass Original-Change: https://android-review.googlesource.com/1316178 Merged-In: Ifcdb16cc66c9234a2bd5f8aac70be809fe0dd223 Change-Id: Ifcdb16cc66c9234a2bd5f8aac70be809fe0dd223
-rw-r--r--Dns64Configuration.cpp9
-rw-r--r--Dns64Configuration.h4
-rw-r--r--DnsResolverService.cpp2
-rw-r--r--ResolverController.h2
4 files changed, 9 insertions, 8 deletions
diff --git a/Dns64Configuration.cpp b/Dns64Configuration.cpp
index 5b3849bd..115fc510 100644
--- a/Dns64Configuration.cpp
+++ b/Dns64Configuration.cpp
@@ -139,7 +139,8 @@ void Dns64Configuration::dump(DumpWriter& dw, unsigned netId) {
if (cfg.prefix64.length() == 0) {
dw.println("%s: no prefix yet discovered", kLabel);
} else {
- dw.println("%s: discovered prefix %s", kLabel, cfg.prefix64.toString().c_str());
+ dw.println("%s: %s prefix %s", kLabel, cfg.isFromPrefixDiscovery() ? "discovered" : "set",
+ cfg.prefix64.toString().c_str());
}
}
@@ -238,8 +239,8 @@ void Dns64Configuration::recordDns64Config(const Dns64Config& cfg) {
reportNat64PrefixStatus(cfg.netId, PREFIX_ADDED, cfg.prefix64);
}
-int Dns64Configuration::setPrefix64(unsigned netId, const IPPrefix* pfx) {
- if (pfx->isUninitialized() || pfx->family() != AF_INET6 || pfx->length() != 96) {
+int Dns64Configuration::setPrefix64(unsigned netId, const IPPrefix& pfx) {
+ if (pfx.isUninitialized() || pfx.family() != AF_INET6 || pfx.length() != 96) {
return -EINVAL;
}
@@ -256,7 +257,7 @@ int Dns64Configuration::setPrefix64(unsigned netId, const IPPrefix* pfx) {
}
Dns64Config cfg(kNoDiscoveryId, netId);
- cfg.prefix64 = *pfx;
+ cfg.prefix64 = pfx;
mDns64Configs.emplace(std::make_pair(netId, cfg));
return 0;
diff --git a/Dns64Configuration.h b/Dns64Configuration.h
index c06a6c1e..387de785 100644
--- a/Dns64Configuration.h
+++ b/Dns64Configuration.h
@@ -82,8 +82,8 @@ class Dns64Configuration {
void stopPrefixDiscovery(unsigned netId);
netdutils::IPPrefix getPrefix64(unsigned netId) const;
- int setPrefix64(unsigned netId, const netdutils::IPPrefix* pfx);
- int clearPrefix64(unsigned netId);
+ int setPrefix64(unsigned netId, const netdutils::IPPrefix& pfx) EXCLUDES(mMutex);
+ int clearPrefix64(unsigned netId) EXCLUDES(mMutex);
void dump(netdutils::DumpWriter& dw, unsigned netId);
diff --git a/DnsResolverService.cpp b/DnsResolverService.cpp
index 6f633331..becda286 100644
--- a/DnsResolverService.cpp
+++ b/DnsResolverService.cpp
@@ -253,7 +253,7 @@ binder_status_t DnsResolverService::dump(int fd, const char** args, uint32_t num
return statusFromErrcode(-EINVAL);
}
- return statusFromErrcode(gDnsResolv->resolverCtrl.setPrefix64(netId, &prefix));
+ return statusFromErrcode(gDnsResolv->resolverCtrl.setPrefix64(netId, prefix));
}
::ndk::ScopedAStatus DnsResolverService::setLogSeverity(int32_t logSeverity) {
diff --git a/ResolverController.h b/ResolverController.h
index 06c0bbc0..e81e1edb 100644
--- a/ResolverController.h
+++ b/ResolverController.h
@@ -54,7 +54,7 @@ class ResolverController {
void stopPrefix64Discovery(int32_t netId);
// Set or clear a NAT64 prefix discovered by other sources (e.g., RA).
- int setPrefix64(unsigned netId, const netdutils::IPPrefix* prefix) {
+ int setPrefix64(unsigned netId, const netdutils::IPPrefix& prefix) {
return mDns64Configuration.setPrefix64(netId, prefix);
}