summaryrefslogtreecommitdiff
path: root/src/libstrongswan/plugins/x509/x509_plugin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstrongswan/plugins/x509/x509_plugin.c')
-rw-r--r--src/libstrongswan/plugins/x509/x509_plugin.c41
1 files changed, 29 insertions, 12 deletions
diff --git a/src/libstrongswan/plugins/x509/x509_plugin.c b/src/libstrongswan/plugins/x509/x509_plugin.c
index 9ed7f95bd..94c49b1e1 100644
--- a/src/libstrongswan/plugins/x509/x509_plugin.c
+++ b/src/libstrongswan/plugins/x509/x509_plugin.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2008 Martin Willi
+ * Copyright (C) 2008-2009 Martin Willi
* Hochschule fuer Technik Rapperswil
*
* This program is free software; you can redistribute it and/or modify it
@@ -21,6 +21,7 @@
#include "x509_crl.h"
#include "x509_ocsp_request.h"
#include "x509_ocsp_response.h"
+#include "x509_pkcs10.h"
typedef struct private_x509_plugin_t private_x509_plugin_t;
@@ -41,15 +42,23 @@ struct private_x509_plugin_t {
static void destroy(private_x509_plugin_t *this)
{
lib->creds->remove_builder(lib->creds,
- (builder_constructor_t)x509_cert_builder);
+ (builder_function_t)x509_cert_gen);
lib->creds->remove_builder(lib->creds,
- (builder_constructor_t)x509_ac_builder);
+ (builder_function_t)x509_cert_load);
lib->creds->remove_builder(lib->creds,
- (builder_constructor_t)x509_crl_builder);
+ (builder_function_t)x509_ac_gen);
lib->creds->remove_builder(lib->creds,
- (builder_constructor_t)x509_ocsp_request_builder);
+ (builder_function_t)x509_ac_load);
lib->creds->remove_builder(lib->creds,
- (builder_constructor_t)x509_ocsp_response_builder);
+ (builder_function_t)x509_crl_load);
+ lib->creds->remove_builder(lib->creds,
+ (builder_function_t)x509_ocsp_request_gen);
+ lib->creds->remove_builder(lib->creds,
+ (builder_function_t)x509_ocsp_response_load);
+ lib->creds->remove_builder(lib->creds,
+ (builder_function_t)x509_pkcs10_gen);
+ lib->creds->remove_builder(lib->creds,
+ (builder_function_t)x509_pkcs10_load);
free(this);
}
@@ -59,19 +68,27 @@ static void destroy(private_x509_plugin_t *this)
plugin_t *plugin_create()
{
private_x509_plugin_t *this = malloc_thing(private_x509_plugin_t);
-
+
this->public.plugin.destroy = (void(*)(plugin_t*))destroy;
lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509,
- (builder_constructor_t)x509_cert_builder);
+ (builder_function_t)x509_cert_gen);
+ lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509,
+ (builder_function_t)x509_cert_load);
+ lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509_AC,
+ (builder_function_t)x509_ac_gen);
lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509_AC,
- (builder_constructor_t)x509_ac_builder);
+ (builder_function_t)x509_ac_load);
lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509_CRL,
- (builder_constructor_t)x509_crl_builder);
+ (builder_function_t)x509_crl_load);
lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509_OCSP_REQUEST,
- (builder_constructor_t)x509_ocsp_request_builder);
+ (builder_function_t)x509_ocsp_request_gen);
lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_X509_OCSP_RESPONSE,
- (builder_constructor_t)x509_ocsp_response_builder);
+ (builder_function_t)x509_ocsp_response_load);
+ lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_PKCS10_REQUEST,
+ (builder_function_t)x509_pkcs10_gen);
+ lib->creds->add_builder(lib->creds, CRED_CERTIFICATE, CERT_PKCS10_REQUEST,
+ (builder_function_t)x509_pkcs10_load);
return &this->public.plugin;
}