diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-18 01:37:38 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-18 01:37:38 +0000 |
commit | 804f2fff98962cbc8070e40fca051121958a8c4c (patch) | |
tree | b91518e9fee94c76e51025bb6c73f944acecc384 | |
parent | 0a004a8f81fe8d39f043d3898e1debade4cb068e (diff) | |
parent | e8bba2c3cb3f5f35f40369f129da4ba1a6e03420 (diff) | |
download | SecureElement-android-security-14.0.0_r4.tar.gz |
Snap for 9957928 from e8bba2c3cb3f5f35f40369f129da4ba1a6e03420 to udc-releaseandroid-vts-14.0_r4android-vts-14.0_r3android-vts-14.0_r2android-vts-14.0_r1android-security-14.0.0_r9android-security-14.0.0_r8android-security-14.0.0_r7android-security-14.0.0_r6android-security-14.0.0_r5android-security-14.0.0_r4android-security-14.0.0_r3android-security-14.0.0_r2android-security-14.0.0_r10android-security-14.0.0_r1android-platform-14.0.0_r9android-platform-14.0.0_r8android-platform-14.0.0_r7android-platform-14.0.0_r6android-platform-14.0.0_r5android-platform-14.0.0_r4android-platform-14.0.0_r3android-platform-14.0.0_r2android-platform-14.0.0_r1android-cts-14.0_r4android-cts-14.0_r3android-cts-14.0_r2android-cts-14.0_r1android-14.0.0_r28android-14.0.0_r2android-14.0.0_r15android-14.0.0_r14android-14.0.0_r13android-14.0.0_r1android14-tests-releaseandroid14-security-releaseandroid14-s2-releaseandroid14-s1-releaseandroid14-releaseandroid14-platform-release
Change-Id: I2fc80993d4e60c07b8bcbff7d78c4a15c9045042
-rw-r--r-- | src/com/android/se/SecureElementService.java | 2 | ||||
-rw-r--r-- | src/com/android/se/Terminal.java | 38 |
2 files changed, 22 insertions, 18 deletions
diff --git a/src/com/android/se/SecureElementService.java b/src/com/android/se/SecureElementService.java index 6286228..47d3103 100644 --- a/src/com/android/se/SecureElementService.java +++ b/src/com/android/se/SecureElementService.java @@ -207,6 +207,7 @@ public final class SecureElementService extends Service { @Override public void onCreate() { + super.onCreate(); Log.i(mTag, Thread.currentThread().getName() + " onCreate"); initialize(); createTerminals(); @@ -229,6 +230,7 @@ public final class SecureElementService extends Service { * close all the channels. */ public void onDestroy() { + super.onDestroy(); Log.i(mTag, "onDestroy"); for (Terminal terminal : mTerminals.values()) { terminal.closeChannels(); diff --git a/src/com/android/se/Terminal.java b/src/com/android/se/Terminal.java index cc4c717..aba77bb 100644 --- a/src/com/android/se/Terminal.java +++ b/src/com/android/se/Terminal.java @@ -892,30 +892,32 @@ public class Terminal { * Reset the Secure Element. Return true if success, false otherwise. */ public boolean reset() { - if (mSEHal12 == null && mAidlHal == null) { - return false; - } - mContext.enforceCallingOrSelfPermission( + synchronized (mLock) { + if (mSEHal12 == null && mAidlHal == null) { + return false; + } + mContext.enforceCallingOrSelfPermission( android.Manifest.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION, "Need SECURE_ELEMENT_PRIVILEGED_OPERATION permission"); - try { - if (mAidlHal != null) { - mAidlHal.reset(); - return true; - } else { - byte status = mSEHal12.reset(); - // Successfully trigger reset. HAL service should send onStateChange - // after secure element reset and initialization process complete - if (status == SecureElementStatus.SUCCESS) { + try { + if (mAidlHal != null) { + mAidlHal.reset(); return true; + } else { + byte status = mSEHal12.reset(); + // Successfully trigger reset. HAL service should send onStateChange + // after secure element reset and initialization process complete + if (status == SecureElementStatus.SUCCESS) { + return true; + } + Log.e(mTag, "Error resetting terminal " + mName); } - Log.e(mTag, "Error resetting terminal " + mName); + } catch (ServiceSpecificException e) { + Log.e(mTag, "Exception in reset()" + e); + } catch (RemoteException e) { + Log.e(mTag, "Exception in reset()" + e); } - } catch (ServiceSpecificException e) { - Log.e(mTag, "Exception in reset()" + e); - } catch (RemoteException e) { - Log.e(mTag, "Exception in reset()" + e); } return false; } |