Merge "[Test] Fix DNS resolver MTS failures" into main am: bf1f867ce6
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2817156 Change-Id: Ia2765e4b0950622d5cb67a0fb57f5dce36f60763 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
committed by
Automerger Merge Worker
commit
0f2a2255e8
@@ -28,8 +28,11 @@ Firewall::Firewall() {
|
|||||||
result = mUidOwnerMap.init(UID_OWNER_MAP_PATH);
|
result = mUidOwnerMap.init(UID_OWNER_MAP_PATH);
|
||||||
EXPECT_RESULT_OK(result) << "init mUidOwnerMap failed";
|
EXPECT_RESULT_OK(result) << "init mUidOwnerMap failed";
|
||||||
|
|
||||||
result = mDataSaverEnabledMap.init(DATA_SAVER_ENABLED_MAP_PATH);
|
// Do not check whether DATA_SAVER_ENABLED_MAP_PATH init succeeded or failed since the map is
|
||||||
EXPECT_RESULT_OK(result) << "init mDataSaverEnabledMap failed";
|
// defined in tethering module, but the user of this class may be in other modules. For example,
|
||||||
|
// DNS resolver tests statically link to this class. But when running MTS, the test infra
|
||||||
|
// installs only DNS resolver module without installing tethering module together.
|
||||||
|
mDataSaverEnabledMap.init(DATA_SAVER_ENABLED_MAP_PATH);
|
||||||
}
|
}
|
||||||
|
|
||||||
Firewall* Firewall::getInstance() {
|
Firewall* Firewall::getInstance() {
|
||||||
@@ -122,6 +125,10 @@ Result<void> Firewall::removeUidInterfaceRules(const std::vector<int32_t>& uids)
|
|||||||
|
|
||||||
Result<bool> Firewall::getDataSaverSetting() {
|
Result<bool> Firewall::getDataSaverSetting() {
|
||||||
std::lock_guard guard(mMutex);
|
std::lock_guard guard(mMutex);
|
||||||
|
if (!mDataSaverEnabledMap.isValid()) {
|
||||||
|
return Errorf("init mDataSaverEnabledMap failed");
|
||||||
|
}
|
||||||
|
|
||||||
auto dataSaverSetting = mDataSaverEnabledMap.readValue(DATA_SAVER_ENABLED_KEY);
|
auto dataSaverSetting = mDataSaverEnabledMap.readValue(DATA_SAVER_ENABLED_KEY);
|
||||||
if (!dataSaverSetting.ok()) {
|
if (!dataSaverSetting.ok()) {
|
||||||
return Errorf("Cannot read the data saver setting: {}", dataSaverSetting.error().message());
|
return Errorf("Cannot read the data saver setting: {}", dataSaverSetting.error().message());
|
||||||
@@ -131,6 +138,10 @@ Result<bool> Firewall::getDataSaverSetting() {
|
|||||||
|
|
||||||
Result<void> Firewall::setDataSaver(bool enabled) {
|
Result<void> Firewall::setDataSaver(bool enabled) {
|
||||||
std::lock_guard guard(mMutex);
|
std::lock_guard guard(mMutex);
|
||||||
|
if (!mDataSaverEnabledMap.isValid()) {
|
||||||
|
return Errorf("init mDataSaverEnabledMap failed");
|
||||||
|
}
|
||||||
|
|
||||||
auto res = mDataSaverEnabledMap.writeValue(DATA_SAVER_ENABLED_KEY, enabled, BPF_EXIST);
|
auto res = mDataSaverEnabledMap.writeValue(DATA_SAVER_ENABLED_KEY, enabled, BPF_EXIST);
|
||||||
if (!res.ok()) return Errorf("Failed to set data saver: {}", res.error().message());
|
if (!res.ok()) return Errorf("Failed to set data saver: {}", res.error().message());
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user