Port credstore to IdentityCredential AIDL.
Bug: 111446262
Test: atest android.security.identity.cts
Test: VtsHalIdentityTargetTest
Test: android.hardware.identity-support-lib-test
Change-Id: I338b35f57f2bb7345c3f8f0c608c7a6213a0dc6b
diff --git a/identity/Util.cpp b/identity/Util.cpp
index 70e7105..a962dc3 100644
--- a/identity/Util.cpp
+++ b/identity/Util.cpp
@@ -35,10 +35,16 @@
using ::android::base::StringPrintf;
-Status halResultToGenericError(const Result& result) {
- string message =
- StringPrintf("HAL failed with code %d: %s", int(result.code), result.message.c_str());
- return Status::fromServiceSpecificError(ICredentialStore::ERROR_GENERIC, message.c_str());
+Status halStatusToError(const Status& halStatus, int credStoreError) {
+ string message = StringPrintf(
+ "HAL failed with exception code %d (%s), service-specific error code %d, message '%s'",
+ halStatus.exceptionCode(), Status::exceptionToString(halStatus.exceptionCode()).c_str(),
+ halStatus.serviceSpecificErrorCode(), halStatus.exceptionMessage().c_str());
+ return Status::fromServiceSpecificError(credStoreError, message.c_str());
+}
+
+Status halStatusToGenericError(const Status& halStatus) {
+ return halStatusToError(halStatus, ICredentialStore::ERROR_GENERIC);
}
optional<vector<uint8_t>> fileGetContents(const string& path) {