00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef OXS_XML_ENCRYPTION_H
00019 #define OXS_XML_ENCRYPTION_H
00020
00021
00032 #include <axis2_defines.h>
00033 #include <oxs_ctx.h>
00034 #include <axutil_env.h>
00035 #include <axiom_node.h>
00036 #include <axiom_element.h>
00037 #include <axutil_qname.h>
00038
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043
00053 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00054 oxs_xml_enc_encrypt_node(const axutil_env_t *env,
00055 oxs_ctx_t * enc_ctx,
00056 axiom_node_t *node,
00057 axiom_node_t **enc_type_node);
00058
00068 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00069 oxs_xml_enc_decrypt_node(const axutil_env_t *env,
00070 oxs_ctx_t * enc_ctx,
00071 axiom_node_t *enc_type_node,
00072 axiom_node_t **decrypted_node);
00073
00083 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00084 oxs_xml_enc_encrypt_data(const axutil_env_t *env,
00085 oxs_ctx_t * enc_ctx,
00086 oxs_buffer_t *content_buf,
00087 axiom_node_t **enc_type_node);
00088
00098 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00099 oxs_xml_enc_decrypt_data(const axutil_env_t *env,
00100 oxs_ctx_t * enc_ctx,
00101 axiom_node_t *enc_type_node,
00102 oxs_buffer_t *result_buf);
00103
00114 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00115 oxs_xml_enc_encrypt_key(const axutil_env_t *env,
00116 oxs_asym_ctx_t * asym_ctx,
00117 axiom_node_t *parent,
00118 oxs_key_t *sym_key,
00119 axutil_array_list_t *id_list);
00120
00131 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00132 oxs_xml_enc_decrypt_key(const axutil_env_t *env,
00133 oxs_asym_ctx_t * asym_ctx,
00134 axiom_node_t *parent,
00135 axiom_node_t *encrypted_key_node,
00136 oxs_key_t *key);
00138 #ifdef __cplusplus
00139 }
00140 #endif
00141
00142 #endif