Merge "key_store:Using euid instead of uid when upgrade wifi blobs" am: 63d98e08b8
am: ff0f7e048a
Change-Id: Idd9075e760359a7b370d8743474479ca2c96c74f
diff --git a/keystore/key_store_service.cpp b/keystore/key_store_service.cpp
index 24a096c..abd93f1 100644
--- a/keystore/key_store_service.cpp
+++ b/keystore/key_store_service.cpp
@@ -1869,6 +1869,13 @@
String8 filename(mKeyStore->getKeyNameForUidWithDir(name8, uid, ::TYPE_KEYMASTER_10));
error = mKeyStore->del(filename.string(), ::TYPE_ANY, get_user_id(uid));
+ if(error == ResponseCode::KEY_NOT_FOUND){
+ uid_t euid = get_keystore_euid(uid);
+ if ((euid != uid) && (euid == AID_WIFI)) {
+ filename=mKeyStore->getKeyNameForUidWithDir(name8, euid, ::TYPE_KEYMASTER_10);
+ error=mKeyStore->del(filename.string(), ::TYPE_ANY, get_user_id(euid));
+ }
+ }
if (!error.isOk()) {
ALOGI("upgradeKeyBlob keystore->del failed %d", (int)error);
return;