00001
00019 #include <axis2_handler_desc.h>
00020 #include <axis2_array_list.h>
00021 #include <axiom_soap_const.h>
00022 #include <axiom_soap_envelope.h>
00023 #include <axiom_soap_header.h>
00024 #include <axiom_soap_header_block.h>
00025 #include <axis2_op.h>
00026 #include <axis2_msg_ctx.h>
00027 #include <axis2_msg_info_headers.h>
00028 #include <axis2_property.h>
00029 #include <rampart_constants.h>
00030 #include <rampart_action.h>
00031 #include <rampart_util.h>
00032 #include <axis2_conf_ctx.h>
00033
00034
00035 #ifndef RAMPART_HANDLER_UTIL_H
00036 #define RAMPART_HANDLER_UTIL_H
00037
00038
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043
00051 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00052 rampart_callback_encuser_password(const axis2_env_t *env,
00053 rampart_actions_t *actions,
00054 axis2_msg_ctx_t *msg_ctx);
00055
00064 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00065 rampart_get_property_from_ctx( const axis2_env_t *env,
00066 axis2_ctx_t *ctx,
00067 const axis2_char_t *key);
00068
00077 AXIS2_EXTERN axis2_param_t* AXIS2_CALL
00078 rampart_get_security_param( const axis2_env_t *env,
00079 axis2_msg_ctx_t *msg_ctx,
00080 axis2_char_t *parameter);
00081
00089 AXIS2_EXTERN axis2_array_list_t* AXIS2_CALL
00090 rampart_get_actions( const axis2_env_t *env,
00091 axis2_ctx_t *ctx,
00092 axis2_param_t *param_x_flow_security);
00093
00094
00095
00096
00107 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00108 rampart_get_action_params( const axis2_env_t *env,
00109 axis2_param_t *param_action,
00110 const axis2_char_t *key);
00111
00112
00120 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00121 rampart_get_security_token(const axis2_env_t *env,
00122 axis2_msg_ctx_t *msg_ctx,
00123 axiom_soap_header_t *soap_header);
00124
00134 AXIS2_EXTERN void AXIS2_CALL
00135 rampart_create_fault_envelope(const axis2_env_t *env,
00136 const axis2_char_t *sub_code,
00137 const axis2_char_t *reason_text,
00138 const axis2_char_t *detail_node_text,
00139 axis2_msg_ctx_t *msg_ctx);
00140
00147 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00148 rampart_validate_security_token(const axis2_env_t *env,
00149 axis2_msg_ctx_t *msg_ctx,
00150 axiom_node_t *sec_node);
00152 #ifdef __cplusplus
00153 }
00154 #endif
00155
00156
00157 #endif