summaryrefslogtreecommitdiff
path: root/src/libtpmtss/plugins/tpm/tpm_plugin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libtpmtss/plugins/tpm/tpm_plugin.c')
-rw-r--r--src/libtpmtss/plugins/tpm/tpm_plugin.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/libtpmtss/plugins/tpm/tpm_plugin.c b/src/libtpmtss/plugins/tpm/tpm_plugin.c
index b9a4c12a8..e98899852 100644
--- a/src/libtpmtss/plugins/tpm/tpm_plugin.c
+++ b/src/libtpmtss/plugins/tpm/tpm_plugin.c
@@ -15,6 +15,7 @@
#include "tpm_plugin.h"
#include "tpm_private_key.h"
+#include "tpm_cert.h"
#include "tpm_rng.h"
#include <library.h>
@@ -50,13 +51,19 @@ METHOD(plugin_t, get_features, int,
PLUGIN_REGISTER(PRIVKEY, tpm_private_key_connect, FALSE),
PLUGIN_PROVIDE(PRIVKEY, KEY_ANY),
};
- static plugin_feature_t f[countof(f_rng) + countof(f_privkey)] = {};
-
+ static plugin_feature_t f_cert[] = {
+ PLUGIN_REGISTER(CERT_DECODE, tpm_cert_load, FALSE),
+ PLUGIN_PROVIDE(CERT_DECODE, CERT_X509),
+ PLUGIN_DEPENDS(CERT_DECODE, CERT_X509),
+ };
+ static plugin_feature_t f[countof(f_rng) + countof(f_privkey) +
+ countof(f_cert)] = {};
static int count = 0;
if (!count)
{
plugin_features_add(f, f_privkey, countof(f_privkey), &count);
+ plugin_features_add(f, f_cert, countof(f_cert), &count);
if (lib->settings->get_bool(lib->settings,
"%s.plugins.tpm.use_rng", FALSE, lib->ns))