oxs_key_mgr.h

Go to the documentation of this file.
00001 /*
00002  * Licensed to the Apache Software Foundation (ASF) under one or more
00003  * contributor license agreements.  See the NOTICE file distributed with
00004  * this work for additional information regarding copyright ownership.
00005  * The ASF licenses this file to You under the Apache License, Version 2.0
00006  * (the "License"); you may not use this file except in compliance with
00007  * the License.  You may obtain a copy of the License at
00008  *
00009  *      http://www.apache.org/licenses/LICENSE-2.0
00010  *
00011  * Unless required by applicable law or agreed to in writing, software
00012  * distributed under the License is distributed on an "AS IS" BASIS,
00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00014  * See the License for the specific language governing permissions and
00015  * limitations under the License.
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, /*in PEM format*/
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                          /* OXS_KEY_MGR_H */

Generated on Thu Oct 4 17:37:07 2007 for Rampart/C by  doxygen 1.4.7