mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-25 00:52:45 -04:00
ima: load x509 certificate from the kernel
Define configuration option to load X509 certificate into the IMA trusted kernel keyring. It implements ima_load_x509() hook to load X509 certificate into the .ima trusted kernel keyring from the root filesystem. Changes in v3: * use ima_policy_flag in ima_get_action() ima_load_x509 temporarily clears ima_policy_flag to disable appraisal to load key. Use it to skip appraisal rules. * Key directory path changed to /etc/keys (Mimi) * Expand IMA_LOAD_X509 Kconfig help Changes in v2: * added '__init' * use ima_policy_flag to disable appraisal to load keys Signed-off-by: Dmitry Kasatkin <d.kasatkin@samsung.com> Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
This commit is contained in:
committed by
Mimi Zohar
parent
65d543b233
commit
fd5f4e9054
@@ -24,6 +24,12 @@
|
||||
#include <crypto/hash_info.h>
|
||||
#include "ima.h"
|
||||
|
||||
#ifdef CONFIG_IMA_X509_PATH
|
||||
#define IMA_X509_PATH CONFIG_IMA_X509_PATH
|
||||
#else
|
||||
#define IMA_X509_PATH "/etc/keys/x509_ima.der"
|
||||
#endif
|
||||
|
||||
/* name for boot aggregate entry */
|
||||
static const char *boot_aggregate_name = "boot_aggregate";
|
||||
int ima_used_chip;
|
||||
@@ -91,6 +97,17 @@ err_out:
|
||||
return result;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_IMA_LOAD_X509
|
||||
void __init ima_load_x509(void)
|
||||
{
|
||||
int unset_flags = ima_policy_flag & IMA_APPRAISE;
|
||||
|
||||
ima_policy_flag &= ~unset_flags;
|
||||
integrity_load_x509(INTEGRITY_KEYRING_IMA, IMA_X509_PATH);
|
||||
ima_policy_flag |= unset_flags;
|
||||
}
|
||||
#endif
|
||||
|
||||
int __init ima_init(void)
|
||||
{
|
||||
u8 pcr_i[TPM_DIGEST_SIZE];
|
||||
|
||||
Reference in New Issue
Block a user