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) {