Integrate authorizations with the operations.
Bug: 171503362, 171503128
Test: TBD
Change-Id: If12104eec4f9f32a9af4f4da8e620543ce26548d
diff --git a/keystore2/src/globals.rs b/keystore2/src/globals.rs
index 18bed9a..075a801 100644
--- a/keystore2/src/globals.rs
+++ b/keystore2/src/globals.rs
@@ -17,6 +17,7 @@
//! to talk to.
use crate::async_task::AsyncTask;
+use crate::enforcements::Enforcements;
use crate::gc::Gc;
use crate::super_key::SuperKeyManager;
use crate::utils::Asp;
@@ -81,6 +82,10 @@
/// A single on-demand worker thread that handles deferred tasks with two different
/// priorities.
pub static ref ASYNC_TASK: AsyncTask = Default::default();
+ /// Singeleton for enforcements.
+ /// It is safe for this enforcements object to be called by multiple threads because the two
+ /// data structures which maintain its state are protected by mutexes.
+ pub static ref ENFORCEMENTS: Enforcements = Enforcements::new();
}
static KEYMINT_SERVICE_NAME: &str = "android.hardware.security.keymint.IKeyMintDevice";