keystore2: Use libbinder_rs Strong references for Binder objects
Update keystore2 to use libbinder_rs Strong<> and Weak<> references for
Binder objects rather than just Box<dyn Interface>.
Bug: 175584883
Test: atest keystore2_test
Change-Id: Ic234ce5ed007a265769a72043d77eb817a21b8ea
diff --git a/keystore2/src/authorization.rs b/keystore2/src/authorization.rs
index ba27df8..e446e78 100644
--- a/keystore2/src/authorization.rs
+++ b/keystore2/src/authorization.rs
@@ -25,8 +25,8 @@
use android_hardware_security_secureclock::aidl::android::hardware::security::secureclock::{
Timestamp::Timestamp,
};
-use android_security_authorization::binder::{Interface, Result as BinderResult};
-use android_security_authorization:: aidl::android::security::authorization::IKeystoreAuthorization::{
+use android_security_authorization::binder::{Interface, Result as BinderResult, Strong};
+use android_security_authorization::aidl::android::security::authorization::IKeystoreAuthorization::{
BnKeystoreAuthorization, IKeystoreAuthorization,
};
use android_security_authorization:: aidl::android::security::authorization::LockScreenEvent::LockScreenEvent;
@@ -40,7 +40,7 @@
impl AuthorizationManager {
/// Create a new instance of Keystore Authorization service.
- pub fn new_native_binder() -> Result<impl IKeystoreAuthorization> {
+ pub fn new_native_binder() -> Result<Strong<dyn IKeystoreAuthorization>> {
let result = BnKeystoreAuthorization::new_binder(Self);
result.as_binder().set_requesting_sid(true);
Ok(result)