diff options
| author | Damien Laniel <dlaniel@entrouvert.com> | 2006-11-09 10:09:58 +0000 |
|---|---|---|
| committer | Damien Laniel <dlaniel@entrouvert.com> | 2006-11-09 10:09:58 +0000 |
| commit | 2183c855a6bbbc845a1f77693fe85eb422709a9f (patch) | |
| tree | 071dab32e529d83b49a2ff5d3c99c21ef62909bb | |
| parent | fae268678ade686c241864b26a4a0852e793ee64 (diff) | |
| download | lasso-2183c855a6bbbc845a1f77693fe85eb422709a9f.tar.gz lasso-2183c855a6bbbc845a1f77693fe85eb422709a9f.tar.xz lasso-2183c855a6bbbc845a1f77693fe85eb422709a9f.zip | |
load encryption private key
| -rw-r--r-- | lasso/id-ff/server.c | 16 | ||||
| -rw-r--r-- | lasso/id-ff/server.h | 2 |
2 files changed, 18 insertions, 0 deletions
diff --git a/lasso/id-ff/server.c b/lasso/id-ff/server.c index 29bada7c..66f182a1 100644 --- a/lasso/id-ff/server.c +++ b/lasso/id-ff/server.c @@ -33,6 +33,7 @@ struct _LassoServerPrivate { gboolean dispose_has_run; + xmlSecKey *encryption_private_key; }; /*****************************************************************************/ @@ -121,6 +122,21 @@ lasso_server_destroy(LassoServer *server) lasso_node_destroy(LASSO_NODE(server)); } +gboolean +lasso_set_encryption_private_key(LassoServer *server, gchar *file_name) +{ + LassoPemFileType file_type; + + server->private_data->encryption_private_key = NULL; + file_type = lasso_get_pem_file_type(file_name); + if (file_type == LASSO_PEM_FILE_TYPE_PRIVATE_KEY) { + server->private_data->encryption_private_key = xmlSecCryptoAppKeyLoad(file_name, + xmlSecKeyDataFormatPem, NULL, NULL, NULL); + } + + return (server->private_data->encryption_private_key != NULL); +} + /*****************************************************************************/ /* private methods */ diff --git a/lasso/id-ff/server.h b/lasso/id-ff/server.h index dee38269..da84d5ef 100644 --- a/lasso/id-ff/server.h +++ b/lasso/id-ff/server.h @@ -96,6 +96,8 @@ LASSO_EXPORT LassoProvider* lasso_server_get_provider(LassoServer *server, gchar LASSO_EXPORT LassoDiscoServiceInstance* lasso_server_get_service(LassoServer *server, gchar *serviceType); +LASSO_EXPORT gboolean lasso_set_encryption_private_key(LassoServer *server, gchar *file_name); + #ifdef __cplusplus } #endif /* __cplusplus */ |
