ClatdController - simplify startup
Doable now that NetworkController unconditionally wipes all clsact
qdiscs from all interfaces on startup.
Test: builds, atest
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I8cec7b45127f6223cc339314b3fec8e8a11cc977
diff --git a/server/ClatdController.cpp b/server/ClatdController.cpp
index 0e8fdb8..763b1c3 100644
--- a/server/ClatdController.cpp
+++ b/server/ClatdController.cpp
@@ -70,33 +70,6 @@
namespace android {
namespace net {
-void ClatdController::resetEgressMap() {
- const auto del = [](const ClatEgressKey& key, const BpfMap<ClatEgressKey, ClatEgressValue>&) {
- ALOGW("Removing stale clat config on interface %d.", key.iif);
- int rv = tcFilterDelDevEgressClatIpv4(key.iif);
- if (rv < 0) ALOGE("tcFilterDelDevEgressClatIpv4() failure: %s", strerror(-rv));
- return Result<void>(); // keep on going regardless
- };
- auto ret = mClatEgressMap.iterate(del);
- if (!ret.ok()) ALOGE("mClatEgressMap.iterate() failure: %s", strerror(ret.error().code()));
- ret = mClatEgressMap.clear();
- if (!ret.ok()) ALOGE("mClatEgressMap.clear() failure: %s", strerror(ret.error().code()));
-}
-
-void ClatdController::resetIngressMap() {
- const auto del = [](const ClatIngressKey& key,
- const BpfMap<ClatIngressKey, ClatIngressValue>&) {
- ALOGW("Removing stale clat config on interface %d.", key.iif);
- int rv = tcFilterDelDevIngressClatIpv6(key.iif);
- if (rv < 0) ALOGE("tcFilterDelDevIngressClatIpv6() failure: %s", strerror(-rv));
- return Result<void>(); // keep on going regardless
- };
- auto ret = mClatIngressMap.iterate(del);
- if (!ret.ok()) ALOGE("mClatIngressMap.iterate() failure: %s", strerror(ret.error().code()));
- ret = mClatIngressMap.clear();
- if (!ret.ok()) ALOGE("mClatIngressMap.clear() failure: %s", strerror(ret.error().code()));
-}
-
void ClatdController::init(void) {
std::lock_guard guard(mutex);
@@ -143,8 +116,8 @@
}
mClatIngressMap.reset(rv);
- resetEgressMap();
- resetIngressMap();
+ mClatEgressMap.clear();
+ mClatIngressMap.clear();
}
bool ClatdController::isIpv4AddressFree(in_addr_t addr) {
diff --git a/server/ClatdController.h b/server/ClatdController.h
index 5589375..84cd9df 100644
--- a/server/ClatdController.h
+++ b/server/ClatdController.h
@@ -82,9 +82,6 @@
std::map<std::string, ClatdTracker> mClatdTrackers GUARDED_BY(mutex);
ClatdTracker* getClatdTracker(const std::string& interface) REQUIRES(mutex);
- void resetEgressMap() REQUIRES(mutex);
- void resetIngressMap() REQUIRES(mutex);
-
void dumpEgress(netdutils::DumpWriter& dw) REQUIRES(mutex);
void dumpIngress(netdutils::DumpWriter& dw) REQUIRES(mutex);
void dumpTrackers(netdutils::DumpWriter& dw) REQUIRES(mutex);