00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef OXS_KEY_MGR_H
00019 #define OXS_KEY_MGR_H
00020
00021
00032 #include <axis2_defines.h>
00033 #include <oxs_ctx.h>
00034 #include <oxs_asym_ctx.h>
00035 #include <axutil_env.h>
00036 #include <axutil_qname.h>
00037 #include <oxs_x509_cert.h>
00038 #include <openssl_pkey.h>
00039 #include <openssl_x509.h>
00040 #include <openssl_pkcs12.h>
00041
00042 #ifdef __cplusplus
00043 extern "C"
00044 {
00045 #endif
00046
00054 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00055 oxs_key_mgr_load_key(const axutil_env_t *env,
00056 oxs_asym_ctx_t *ctx,
00057 axis2_char_t *password);
00068 AXIS2_EXTERN openssl_pkey_t* AXIS2_CALL
00069 oxs_key_mgr_load_private_key_from_string(const axutil_env_t *env,
00070 axis2_char_t *pem_buf,
00071 axis2_char_t *password);
00079 AXIS2_EXTERN openssl_pkey_t* AXIS2_CALL
00080 oxs_key_mgr_load_private_key_from_pem_file(const axutil_env_t *env,
00081 axis2_char_t *file_name,
00082 axis2_char_t *password);
00083
00093 AXIS2_EXTERN oxs_x509_cert_t* AXIS2_CALL
00094 oxs_key_mgr_load_x509_cert_from_string(const axutil_env_t *env,
00095 axis2_char_t *pem_buf);
00096
00103 AXIS2_EXTERN oxs_x509_cert_t* AXIS2_CALL
00104 oxs_key_mgr_load_x509_cert_from_pem_file(const axutil_env_t *env,
00105 axis2_char_t *filename);
00106
00116 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00117 oxs_key_mgr_read_pkcs12_key_store(const axutil_env_t *env,
00118 axis2_char_t *pkcs12_file,
00119 axis2_char_t *password,
00120 oxs_x509_cert_t **cert,
00121 openssl_pkey_t **prv_key);
00122
00124 #ifdef __cplusplus
00125 }
00126 #endif
00127
00128 #endif