summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/keymaster/km_openssl/ecdsa_operation.h8
-rw-r--r--include/keymaster/km_openssl/rsa_operation.h17
-rw-r--r--include/keymaster/operation.h2
3 files changed, 14 insertions, 13 deletions
diff --git a/include/keymaster/km_openssl/ecdsa_operation.h b/include/keymaster/km_openssl/ecdsa_operation.h
index 6050784..4be0d2e 100644
--- a/include/keymaster/km_openssl/ecdsa_operation.h
+++ b/include/keymaster/km_openssl/ecdsa_operation.h
@@ -84,20 +84,20 @@ class EcdsaOperationFactory : public OperationFactory {
private:
KeyType registry_key() const override { return KeyType(KM_ALGORITHM_EC, purpose()); }
OperationPtr CreateOperation(Key&& key, const AuthorizationSet& begin_params,
- keymaster_error_t* error) override;
+ keymaster_error_t* error) const override;
const keymaster_digest_t* SupportedDigests(size_t* digest_count) const override;
virtual keymaster_purpose_t purpose() const = 0;
virtual Operation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced,
- keymaster_digest_t digest, EVP_PKEY* key) = 0;
+ keymaster_digest_t digest, EVP_PKEY* key) const = 0;
};
class EcdsaSignOperationFactory : public EcdsaOperationFactory {
private:
keymaster_purpose_t purpose() const override { return KM_PURPOSE_SIGN; }
Operation* InstantiateOperation(AuthorizationSet&& hw_enforced, AuthorizationSet&& sw_enforced,
- keymaster_digest_t digest, EVP_PKEY* key) override {
+ keymaster_digest_t digest, EVP_PKEY* key) const override {
return new (std::nothrow)
EcdsaSignOperation(move(hw_enforced), move(sw_enforced), digest, key);
}
@@ -107,7 +107,7 @@ class EcdsaVerifyOperationFactory : public EcdsaOperationFactory {
public:
keymaster_purpose_t purpose() const override { return KM_PURPOSE_VERIFY; }
Operation* InstantiateOperation(AuthorizationSet&& hw_enforced, AuthorizationSet&& sw_enforced,
- keymaster_digest_t digest, EVP_PKEY* key) override {
+ keymaster_digest_t digest, EVP_PKEY* key) const override {
return new (std::nothrow)
EcdsaVerifyOperation(move(hw_enforced), move(sw_enforced), digest, key);
}
diff --git a/include/keymaster/km_openssl/rsa_operation.h b/include/keymaster/km_openssl/rsa_operation.h
index 578a3d2..dd14b57 100644
--- a/include/keymaster/km_openssl/rsa_operation.h
+++ b/include/keymaster/km_openssl/rsa_operation.h
@@ -188,7 +188,7 @@ class RsaOperationFactory : public OperationFactory {
virtual keymaster_purpose_t purpose() const = 0;
OperationPtr CreateOperation(Key&& key, const AuthorizationSet& begin_params,
- keymaster_error_t* error) override {
+ keymaster_error_t* error) const override {
return OperationPtr(CreateRsaOperation(move(key), begin_params, error));
}
const keymaster_digest_t* SupportedDigests(size_t* digest_count) const override;
@@ -196,13 +196,14 @@ class RsaOperationFactory : public OperationFactory {
protected:
static EVP_PKEY* GetRsaKey(Key&& key, keymaster_error_t* error);
virtual RsaOperation* CreateRsaOperation(Key&& key, const AuthorizationSet& begin_params,
- keymaster_error_t* error);
+ keymaster_error_t* error) const;
private:
virtual RsaOperation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced,
keymaster_digest_t digest,
- keymaster_padding_t padding, EVP_PKEY* key) = 0;
+ keymaster_padding_t padding,
+ EVP_PKEY* key) const = 0;
};
/**
@@ -220,7 +221,7 @@ class RsaDigestingOperationFactory : public RsaOperationFactory {
class RsaCryptingOperationFactory : public RsaOperationFactory {
public:
RsaOperation* CreateRsaOperation(Key&& key, const AuthorizationSet& begin_params,
- keymaster_error_t* error) override;
+ keymaster_error_t* error) const override;
const keymaster_padding_t* SupportedPaddingModes(size_t* padding_mode_count) const override;
};
@@ -232,7 +233,7 @@ class RsaSigningOperationFactory : public RsaDigestingOperationFactory {
keymaster_purpose_t purpose() const override { return KM_PURPOSE_SIGN; }
RsaOperation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced, keymaster_digest_t digest,
- keymaster_padding_t padding, EVP_PKEY* key) override {
+ keymaster_padding_t padding, EVP_PKEY* key) const override {
return new (std::nothrow)
RsaSignOperation(move(hw_enforced), move(sw_enforced), digest, padding, key);
}
@@ -245,7 +246,7 @@ class RsaVerificationOperationFactory : public RsaDigestingOperationFactory {
keymaster_purpose_t purpose() const override { return KM_PURPOSE_VERIFY; }
RsaOperation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced, keymaster_digest_t digest,
- keymaster_padding_t padding, EVP_PKEY* key) override {
+ keymaster_padding_t padding, EVP_PKEY* key) const override {
return new (std::nothrow)
RsaVerifyOperation(move(hw_enforced), move(sw_enforced), digest, padding, key);
}
@@ -258,7 +259,7 @@ class RsaEncryptionOperationFactory : public RsaCryptingOperationFactory {
keymaster_purpose_t purpose() const override { return KM_PURPOSE_ENCRYPT; }
RsaOperation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced, keymaster_digest_t digest,
- keymaster_padding_t padding, EVP_PKEY* key) override {
+ keymaster_padding_t padding, EVP_PKEY* key) const override {
return new (std::nothrow)
RsaEncryptOperation(move(hw_enforced), move(sw_enforced), digest, padding, key);
}
@@ -271,7 +272,7 @@ class RsaDecryptionOperationFactory : public RsaCryptingOperationFactory {
keymaster_purpose_t purpose() const override { return KM_PURPOSE_DECRYPT; }
RsaOperation* InstantiateOperation(AuthorizationSet&& hw_enforced,
AuthorizationSet&& sw_enforced, keymaster_digest_t digest,
- keymaster_padding_t padding, EVP_PKEY* key) override {
+ keymaster_padding_t padding, EVP_PKEY* key) const override {
return new (std::nothrow)
RsaDecryptOperation(move(hw_enforced), move(sw_enforced), digest, padding, key);
}
diff --git a/include/keymaster/operation.h b/include/keymaster/operation.h
index 682aadf..f643e6b 100644
--- a/include/keymaster/operation.h
+++ b/include/keymaster/operation.h
@@ -53,7 +53,7 @@ class OperationFactory {
// Factory methods
virtual OperationPtr CreateOperation(Key&& key, const AuthorizationSet& begin_params,
- keymaster_error_t* error) = 0;
+ keymaster_error_t* error) const = 0;
// Informational methods. The returned arrays reference static memory and must not be
// deallocated or modified.