Move uidOwnerMap dump to BpfNetMaps

Before this CL
....
mUidOwnerMap:
10050  IIF_MATCH LOCKDOWN_VPN_MATCH 0
10061  HAPPY_BOX_MATCH
10091  HAPPY_BOX_MATCH IIF_MATCH LOCKDOWN_VPN_MATCH 0
....

After this CL
....
sUidOwnerMap:
  10050 IIF_MATCH LOCKDOWN_VPN_MATCH 0
  10061 HAPPY_BOX_MATCH
  10091 HAPPY_BOX_MATCH IIF_MATCH LOCKDOWN_VPN_MATCH 0
....

Bug: 217624062
Test: dumpsys connectivity trafficcontroller, atest BpfNetMapsTest
Change-Id: I0e2358e462824273a89fcba6e19e75a233f9fe18
This commit is contained in:
Motomu Utsumi
2022-09-02 17:01:25 +09:00
parent 310850f210
commit 956d86ccdf
4 changed files with 98 additions and 67 deletions

View File

@@ -793,11 +793,6 @@ TEST_F(TrafficControllerTest, TestDumpsys) {
"mCookieTagMap:",
fmt::format("cookie={} tag={:#x} uid={}", TEST_COOKIE, TEST_TAG, TEST_UID)};
ASSERT_TRUE(isOk(updateUidOwnerMaps({TEST_UID}, HAPPY_BOX_MATCH,
TrafficController::IptOpInsert)));
expectedLines.emplace_back("mUidOwnerMap:");
expectedLines.emplace_back(fmt::format("{} HAPPY_BOX_MATCH", TEST_UID));
EXPECT_TRUE(expectDumpsysContains(expectedLines));
}
@@ -815,51 +810,10 @@ TEST_F(TrafficControllerTest, dumpsysInvalidMaps) {
fmt::format("mCookieTagMap {}", kErrIterate),
fmt::format("mIfaceStatsMap {}", kErrIterate),
fmt::format("mConfigurationMap {}", kErrReadRulesConfig),
fmt::format("mConfigurationMap {}", kErrReadStatsMapConfig),
fmt::format("mUidOwnerMap {}", kErrIterate)};
fmt::format("mConfigurationMap {}", kErrReadStatsMapConfig)};
EXPECT_TRUE(expectDumpsysContains(expectedLines));
}
TEST_F(TrafficControllerTest, uidMatchTypeToString) {
// NO_MATCH(0) can't be verified because match type flag is added by OR operator.
// See TrafficController::addRule()
static const struct TestConfig {
UidOwnerMatchType uidOwnerMatchType;
std::string expected;
} testConfigs[] = {
// clang-format off
{HAPPY_BOX_MATCH, "HAPPY_BOX_MATCH"},
{DOZABLE_MATCH, "DOZABLE_MATCH"},
{STANDBY_MATCH, "STANDBY_MATCH"},
{POWERSAVE_MATCH, "POWERSAVE_MATCH"},
{HAPPY_BOX_MATCH, "HAPPY_BOX_MATCH"},
{RESTRICTED_MATCH, "RESTRICTED_MATCH"},
{LOW_POWER_STANDBY_MATCH, "LOW_POWER_STANDBY_MATCH"},
{IIF_MATCH, "IIF_MATCH"},
{LOCKDOWN_VPN_MATCH, "LOCKDOWN_VPN_MATCH"},
{OEM_DENY_1_MATCH, "OEM_DENY_1_MATCH"},
{OEM_DENY_2_MATCH, "OEM_DENY_2_MATCH"},
{OEM_DENY_3_MATCH, "OEM_DENY_3_MATCH"},
// clang-format on
};
for (const auto& config : testConfigs) {
SCOPED_TRACE(fmt::format("testConfig: [{}, {}]", config.uidOwnerMatchType,
config.expected));
// Test private function uidMatchTypeToString() via dumpsys.
ASSERT_TRUE(isOk(updateUidOwnerMaps({TEST_UID}, config.uidOwnerMatchType,
TrafficController::IptOpInsert)));
std::vector<std::string> expectedLines;
expectedLines.emplace_back(fmt::format("{} {}", TEST_UID, config.expected));
EXPECT_TRUE(expectDumpsysContains(expectedLines));
// Clean up the stubs.
ASSERT_TRUE(isOk(updateUidOwnerMaps({TEST_UID}, config.uidOwnerMatchType,
TrafficController::IptOpDelete)));
}
}
TEST_F(TrafficControllerTest, getFirewallType) {
static const struct TestConfig {
ChildChain childChain;