00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 #include<openssl/evp.h>
00018 #include<oxs_buffer.h>
00019 
00024 #ifndef OPENSSL_CIPHER_PROPERTY_H
00025 #define OPENSSL_CIPHER_PROPERTY_H
00026 
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036 
00037 
00039     typedef struct openssl_cipher_property_t openssl_cipher_property_t;
00040 
00041 
00048     EVP_CIPHER * AXIS2_CALL
00049     openssl_cipher_property_get_cipher(
00050         const openssl_cipher_property_t *cprop,
00051         const axutil_env_t *env);
00052 
00059     axis2_char_t * AXIS2_CALL
00060     openssl_cipher_property_get_name(
00061         const openssl_cipher_property_t *cprop,
00062         const axutil_env_t *env);
00063 
00071     axis2_char_t * AXIS2_CALL
00072     openssl_cipher_property_get_url(
00073         const openssl_cipher_property_t *cprop,
00074         const axutil_env_t *env);
00075 
00082     int AXIS2_CALL
00083     openssl_cipher_property_get_key_size(
00084         const openssl_cipher_property_t *cprop,
00085         const axutil_env_t *env);
00086 
00093     int AXIS2_CALL
00094     openssl_cipher_property_get_block_size(
00095         const openssl_cipher_property_t *cprop,
00096         const axutil_env_t *env);
00097 
00104     int AXIS2_CALL
00105     openssl_cipher_property_get_iv_size(
00106         const openssl_cipher_property_t *cprop,
00107         const axutil_env_t *env);
00108 
00116     axis2_status_t AXIS2_CALL
00117     openssl_cipher_property_set_cipher(
00118         openssl_cipher_property_t *cprop,
00119         const axutil_env_t *env,
00120         EVP_CIPHER *cipher);
00121 
00129     axis2_status_t AXIS2_CALL
00130     openssl_cipher_property_set_name(
00131         openssl_cipher_property_t *cprop,
00132         const axutil_env_t *env,
00133         axis2_char_t *name);
00134 
00142     axis2_status_t AXIS2_CALL
00143     openssl_cipher_property_set_url(
00144         openssl_cipher_property_t *cprop,
00145         const axutil_env_t *env,
00146         axis2_char_t *url);
00147 
00155     axis2_status_t AXIS2_CALL
00156     openssl_cipher_property_set_key_size(
00157         openssl_cipher_property_t *cprop,
00158         const axutil_env_t *env,
00159         int   key_size);
00160 
00161 
00169     axis2_status_t AXIS2_CALL
00170     openssl_cipher_property_set_block_size(
00171         openssl_cipher_property_t *cprop,
00172         const axutil_env_t *env,
00173         int  block_size);
00174 
00182     axis2_status_t AXIS2_CALL
00183     openssl_cipher_property_set_iv_size(
00184         openssl_cipher_property_t *cprop,
00185         const axutil_env_t *env,
00186         int   iv_size);
00187 
00194     axis2_status_t AXIS2_CALL
00195     openssl_cipher_property_free(openssl_cipher_property_t * cprop, 
00196         const axutil_env_t *env);
00197 
00198 
00204     AXIS2_EXTERN openssl_cipher_property_t *AXIS2_CALL
00205     openssl_cipher_property_create(const axutil_env_t *env);
00206 
00209 #ifdef __cplusplus
00210 }
00211 #endif
00212 
00213 #endif