oxs_x509_cert.h

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_X509_CERT
00019 #define OXS_X509_CERT
00020 
00021 
00027 #include <axis2_defines.h>
00028 #include <axis2_env.h>
00029 #include <axiom_node.h>
00030 #include <openssl_pkey.h>
00031 
00032 #ifdef __cplusplus
00033 extern "C"
00034 {
00035 #endif
00036 
00050 typedef struct oxs_x509_cert_t oxs_x509_cert_t;
00051 /*Create*/
00052 AXIS2_EXTERN oxs_x509_cert_t *AXIS2_CALL
00053 oxs_x509_cert_create( const axis2_env_t *env);
00054 
00055 /*Free*/
00056 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00057 oxs_x509_cert_free(oxs_x509_cert_t *x509_cert,
00058     const axis2_env_t *env);
00059 
00060 /*Getters*/
00061 AXIS2_EXTERN int AXIS2_CALL
00062 oxs_x509_cert_get_serial_number(oxs_x509_cert_t *x509_cert,
00063     const axis2_env_t *env);
00064 
00065 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00066 oxs_x509_cert_get_subject(oxs_x509_cert_t *x509_cert,
00067     const axis2_env_t *env);
00068 
00069 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00070 oxs_x509_cert_get_issuer(oxs_x509_cert_t *x509_cert,
00071     const axis2_env_t *env);
00072 
00073 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00074 oxs_x509_cert_get_key_identifier(oxs_x509_cert_t *x509_cert,
00075     const axis2_env_t *env);
00076 
00077 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00078 oxs_x509_cert_get_fingerprint(oxs_x509_cert_t *x509_cert,
00079     const axis2_env_t *env);
00080 
00081 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00082 oxs_x509_cert_get_date(oxs_x509_cert_t *x509_cert,
00083     const axis2_env_t *env);
00084 
00085 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00086 oxs_x509_cert_get_hash(oxs_x509_cert_t *x509_cert,
00087     const axis2_env_t *env);
00088 
00089 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00090 oxs_x509_cert_get_data(oxs_x509_cert_t *x509_cert,
00091     const axis2_env_t *env);
00092 
00093 AXIS2_EXTERN openssl_pkey_t *AXIS2_CALL
00094 oxs_x509_cert_get_public_key(oxs_x509_cert_t *x509_cert,
00095     const axis2_env_t *env);
00096 
00097 /*Setters*/
00098 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00099 oxs_x509_cert_set_serial_number(oxs_x509_cert_t *x509_cert,
00100     const axis2_env_t *env,
00101     int value);
00102 
00103 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00104 oxs_x509_cert_set_issuer(oxs_x509_cert_t *x509_cert,
00105     const axis2_env_t *env,
00106     axis2_char_t *value);
00107 
00108 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00109 oxs_x509_cert_set_key_identifier(oxs_x509_cert_t *x509_cert,
00110     const axis2_env_t *env,
00111     axis2_char_t *value);
00112 
00113 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00114 oxs_x509_cert_set_subject(oxs_x509_cert_t *x509_cert,
00115     const axis2_env_t *env,
00116     axis2_char_t *value);
00117 
00118 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00119 oxs_x509_cert_set_fingerprint(oxs_x509_cert_t *x509_cert,
00120     const axis2_env_t *env,
00121     axis2_char_t *value);
00122 
00123 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00124 oxs_x509_cert_set_date(oxs_x509_cert_t *x509_cert,
00125     const axis2_env_t *env,
00126     axis2_char_t *value);
00127 
00128 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00129 oxs_x509_cert_set_hash(oxs_x509_cert_t *x509_cert,
00130     const axis2_env_t *env,
00131     axis2_char_t *value);
00132 
00133 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00134 oxs_x509_cert_set_data(oxs_x509_cert_t *x509_cert,
00135     const axis2_env_t *env,
00136     axis2_char_t *value);
00137 
00138 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00139 oxs_x509_cert_set_public_key(oxs_x509_cert_t *x509_cert,
00140     const axis2_env_t *env,
00141     openssl_pkey_t *public_key);
00142 
00144 #ifdef __cplusplus
00145 }
00146 #endif
00147 
00148 #endif                          /* OXS_X509_CERT */

Generated on Wed Dec 20 20:14:10 2006 for Axis2/C by  doxygen 1.5.1