00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include <axis2_defines.h>
00017 #include <axutil_env.h>
00018 #include <openssl/evp.h>
00019 #include <oxs_key.h>
00024 #ifndef OPENSSL_CIPHER_CTX_H
00025 #define OPENSSL_CIPHER_CTX_H
00026
00035 #ifdef __cplusplus
00036 extern "C" {
00037 #endif
00038
00040 typedef struct openssl_cipher_ctx_t openssl_cipher_ctx_t;
00041
00048 axis2_status_t AXIS2_CALL
00049 openssl_cipher_ctx_free(
00050 openssl_cipher_ctx_t *ctx,
00051 const axutil_env_t *env);
00058 const EVP_CIPHER* AXIS2_CALL
00059 openssl_cipher_ctx_get_cipher(
00060 openssl_cipher_ctx_t *ctx,
00061 const axutil_env_t *env);
00068 oxs_key_t *AXIS2_CALL
00069 openssl_cipher_ctx_get_key(
00070 openssl_cipher_ctx_t *ctx,
00071 const axutil_env_t *env);
00078 axis2_char_t *AXIS2_CALL
00079 openssl_cipher_ctx_get_iv(
00080 openssl_cipher_ctx_t *ctx,
00081 const axutil_env_t *env);
00088 axis2_char_t *AXIS2_CALL
00089 openssl_cipher_ctx_get_pad(
00090 openssl_cipher_ctx_t *ctx,
00091 const axutil_env_t *env);
00092
00093 axis2_status_t AXIS2_CALL
00094 openssl_cipher_ctx_set_cipher(
00095 openssl_cipher_ctx_t *ctx,
00096 const axutil_env_t *env,
00097 const EVP_CIPHER*);
00098
00099 axis2_status_t AXIS2_CALL
00100 openssl_cipher_ctx_set_key(
00101 openssl_cipher_ctx_t *ctx,
00102 const axutil_env_t *env,
00103 oxs_key_t *key);
00104
00105 axis2_status_t AXIS2_CALL
00106 openssl_cipher_ctx_set_iv(
00107 openssl_cipher_ctx_t *ctx,
00108 const axutil_env_t *env,
00109 axis2_char_t *iv);
00110
00111 axis2_status_t AXIS2_CALL
00112 openssl_cipher_ctx_set_pad(
00113 openssl_cipher_ctx_t *ctx,
00114 const axutil_env_t *env,
00115 axis2_char_t *pad);
00116
00117
00118
00119 AXIS2_EXTERN openssl_cipher_ctx_t *AXIS2_CALL
00120 openssl_cipher_ctx_create(const axutil_env_t *env);
00121
00122
00123 #ifdef __cplusplus
00124 }
00125 #endif
00126
00127 #endif