00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 #ifndef OXS_SIGNATURE_H
00019 #define OXS_SIGNATURE_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 #include <oxs_sign_ctx.h>
00039 
00040 #ifdef __cplusplus
00041 extern "C"
00042 {
00043 #endif
00044 
00054     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00055     oxs_sig_sign_hmac_sha1(const axutil_env_t *env,
00056                       oxs_sign_ctx_t *sign_ctx,
00057                       oxs_buffer_t *input,
00058                       oxs_buffer_t *output);
00059 
00069     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00070     oxs_sig_sign_rsa_sha1(const axutil_env_t *env,
00071                           oxs_sign_ctx_t *sign_ctx,
00072                           oxs_buffer_t *input,
00073                           oxs_buffer_t *output);
00074 
00086     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00087     oxs_sig_sign(const axutil_env_t *env,
00088                  oxs_sign_ctx_t *sign_ctx,
00089                  oxs_buffer_t *input,
00090                  oxs_buffer_t *output);
00091 
00102     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00103     oxs_sig_verify(const axutil_env_t *env,
00104                    oxs_sign_ctx_t *sign_ctx,
00105                    axis2_char_t *content,
00106                    axis2_char_t *signature);
00116     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00117     oxs_sig_verify_hmac_sha1(const axutil_env_t *env,
00118                oxs_sign_ctx_t *sign_ctx,
00119                axis2_char_t *content,
00120                axis2_char_t *signature);
00121 
00131     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00132     oxs_sig_verify_rsa_sha1(const axutil_env_t *env,
00133                oxs_sign_ctx_t *sign_ctx,
00134                axis2_char_t *content,
00135                axis2_char_t *signature);
00136 
00138 #ifdef __cplusplus
00139 }
00140 #endif
00141 
00142 #endif