00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 #include <axutil_utils_defines.h>
00019 #include <axis2_defines.h>
00020 #include <axutil_date_time.h>
00021 #include <axutil_env.h>
00022 #include <axis2_msg_ctx.h>
00023 #include <rampart_authn_provider.h>
00024 #include <rampart_credentials.h>
00025 #include <rampart_callback.h>
00026 #include <rampart_replay_detector.h>
00027 #include <rampart_sct_provider.h>
00028 
00040 #ifndef RAMPART_UTIL_H
00041 #define RAMPART_UTIL_H
00042 
00043 #ifdef __cplusplus
00044 extern "C" {
00045 #endif
00046 
00054     AXIS2_EXTERN rampart_credentials_t* AXIS2_CALL
00055     rampart_load_credentials_module(
00056         const axutil_env_t *env,
00057         axis2_char_t *cred_module_name);
00058 
00069     AXIS2_EXTERN rampart_credentials_status_t AXIS2_CALL
00070     rampart_call_credentials(
00071         const axutil_env_t *env,
00072         rampart_credentials_t *cred_module,
00073         axis2_msg_ctx_t *ctx,
00074         axis2_char_t **username,
00075         axis2_char_t **password);
00076 
00084     AXIS2_EXTERN rampart_authn_provider_t* AXIS2_CALL
00085     rampart_load_auth_module(
00086         const axutil_env_t *env,
00087         axis2_char_t *auth_module_name);
00088 
00096     AXIS2_EXTERN rampart_replay_detector_t* AXIS2_CALL
00097     rampart_load_replay_detector(
00098         const axutil_env_t *env,
00099         axis2_char_t *replay_detector_name);
00100 
00108     AXIS2_EXTERN rampart_sct_provider_t* AXIS2_CALL
00109     rampart_load_sct_provider(
00110         const axutil_env_t *env,
00111         axis2_char_t *sct_provider_name);
00112 
00120     AXIS2_EXTERN rampart_callback_t* AXIS2_CALL
00121     rampart_load_pwcb_module(
00122         const axutil_env_t *env,
00123         axis2_char_t *callback_module_name);
00124 
00125 
00138     AXIS2_EXTERN rampart_authn_provider_status_t AXIS2_CALL
00139     rampart_authenticate_un_pw(
00140         const axutil_env_t *env,
00141         rampart_authn_provider_t *authp,
00142         const axis2_char_t *username,
00143         const axis2_char_t *password,
00144         const axis2_char_t *nonce,
00145         const axis2_char_t *created,
00146         const axis2_char_t *password_type,
00147         axis2_msg_ctx_t *msg_ctx);
00148 
00149 
00157     AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00158     rampart_callback_password(
00159         const axutil_env_t *env,
00160         rampart_callback_t *callback_module,
00161         const axis2_char_t *username);
00162 
00170         AXIS2_EXTERN axis2_char_t * AXIS2_CALL
00171         rampart_callback_pkcs12_password(
00172             const axutil_env_t *env,
00173             rampart_callback_t *callback_module,
00174             const axis2_char_t *username);      
00175 
00183     AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00184     rampart_generate_time(
00185         const axutil_env_t *env, 
00186         int ttl, 
00187         axis2_bool_t with_millisecond);
00188 
00196     AXIS2_EXTERN axis2_status_t AXIS2_CALL
00197     rampart_compare_date_time(
00198         const axutil_env_t *env, 
00199         axis2_char_t *dt1, 
00200         axis2_char_t *dt2);
00201 
00202     
00203 #ifdef __cplusplus
00204 }
00205 #endif
00206 
00207 #endif    
00208 
00209