diff --git a/init/property_service.cpp b/init/property_service.cpp index 9af6882a1..7b2aa0e46 100644 --- a/init/property_service.cpp +++ b/init/property_service.cpp @@ -918,6 +918,9 @@ static const char *snet_prop_value[] = { }; static void workaround_snet_properties() { + // Weaken property override security to set safetynet props + weaken_prop_override_security = true; + std::string error; LOG(INFO) << "snet: Hiding sensitive props"; @@ -925,6 +928,9 @@ static void workaround_snet_properties() { for (int i = 0; snet_prop_key[i]; ++i) { PropertySetNoSocket(snet_prop_key[i], snet_prop_value[i], &error); } + + // Restore the normal property override security after safetynet props have been set + weaken_prop_override_security = false; } // If the ro.product.[brand|device|manufacturer|model|name] properties have not been explicitly @@ -1296,9 +1302,6 @@ void PropertyLoadBootDefaults() { } } - // Weaken property override security during execution of the vendor init extension - weaken_prop_override_security = true; - // Update with vendor-specific property runtime overrides vendor_load_properties(); @@ -1313,9 +1316,6 @@ void PropertyLoadBootDefaults() { // Workaround SafetyNet workaround_snet_properties(); - - // Restore the normal property override security after init extension is executed - weaken_prop_override_security = false; } void PropertyLoadDerivedDefaults() {