credstore: Pass additional information to Identity Credential HAL.
Without this extra information passed upfront it's not practical to
implement a HAL which incrementally builds up cryptographically
authenticated data.
This information is conveyed by using two new methods on version 2 of
the Identity Credential HAL. If these methods are not implemented (if
a version 1 HAL is running) the invocation fails and we handle this
gracefully by just ignoring the error.
Bug: 154631410
Test: atest VtsHalIdentityTargetTest
Test: atest android.security.identity.cts
Change-Id: I17d516e41e800f58daa4c11dcca0305c80740d5b
diff --git a/identity/WritableCredential.h b/identity/WritableCredential.h
index 8b5e19e..eb63aca 100644
--- a/identity/WritableCredential.h
+++ b/identity/WritableCredential.h
@@ -50,10 +50,15 @@
private:
string dataPath_;
string credentialName_;
+ string docType_;
size_t dataChunkSize_;
sp<IWritableIdentityCredential> halBinder_;
vector<uint8_t> attestationCertificate_;
+ ssize_t calcExpectedProofOfProvisioningSize(
+ const vector<AccessControlProfileParcel>& accessControlProfiles,
+ const vector<EntryNamespaceParcel>& entryNamespaces);
+
Status ensureAttestationCertificateExists(const vector<uint8_t>& challenge);
};