00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef RAMPART_CONTEXT_H
00019 #define RAMPART_CONTEXT_H
00020
00032 #include <rp_includes.h>
00033 #include <rp_secpolicy.h>
00034 #include <rampart_authn_provider.h>
00035 #include <axutil_property.h>
00036 #include <rampart_constants.h>
00037 #include <rampart_callback.h>
00038 #include <rampart_authn_provider.h>
00039 #include <axis2_key_type.h>
00040 #include <axis2_msg_ctx.h>
00041 #include <oxs_key.h>
00042 #include <axutil_array_list.h>
00043 #include <rampart_saml_token.h>
00044 #include <rampart_issued_token.h>
00045 #include <oxs_key_mgr.h>
00046
00047 #ifdef __cplusplus
00048 extern "C"
00049 {
00050 #endif
00051
00052 typedef struct rampart_context_t rampart_context_t;
00053
00054 typedef axis2_char_t *(AXIS2_CALL*
00055 password_callback_fn)(
00056 const axutil_env_t *env,
00057 const axis2_char_t *username,
00058 void *user_params);
00059
00060 typedef axis2_status_t (AXIS2_CALL*
00061 rampart_is_replayed_fn)(
00062 const axutil_env_t *env,
00063 axis2_msg_ctx_t* msg_ctx,
00064 rampart_context_t *rampart_context,
00065 void *user_params);
00066
00067 typedef rampart_authn_provider_status_t (AXIS2_CALL*
00068 auth_password_func)(
00069 const axutil_env_t* env,
00070 const axis2_char_t *username,
00071 const axis2_char_t *password,
00072 void *ctx);
00073
00074 typedef rampart_authn_provider_status_t (AXIS2_CALL*
00075 auth_digest_func)(
00076 const axutil_env_t* env,
00077 const axis2_char_t *username,
00078 const axis2_char_t *nonce,
00079 const axis2_char_t *created,
00080 const char *digest,
00081 void *ctx);
00082
00083
00084
00085
00086
00087 typedef axis2_status_t (AXIS2_CALL*
00088 store_security_context_token_fn)(
00089 const axutil_env_t *env,
00090 axis2_msg_ctx_t* msg_ctx,
00091 axis2_char_t *sct_global_id,
00092 axis2_char_t *sct_local_id,
00093 void *sct,
00094 void *user_params);
00095
00096
00097
00098
00099
00100
00101
00102
00103 typedef void* (AXIS2_CALL*
00104 obtain_security_context_token_fn)(
00105 const axutil_env_t *env,
00106 axis2_bool_t is_encryption,
00107 axis2_msg_ctx_t* msg_ctx,
00108 axis2_char_t *sct_id,
00109 int sct_id_type,
00110 void* user_params);
00111
00112
00113
00114
00115 typedef axis2_status_t (AXIS2_CALL*
00116 delete_security_context_token_fn)(
00117 const axutil_env_t *env,
00118 axis2_msg_ctx_t* msg_ctx,
00119 axis2_char_t *sct_id,
00120 int sct_id_type,
00121 void* user_params);
00122
00123
00124
00125
00126
00127
00128
00129 typedef axis2_status_t (AXIS2_CALL*
00130 validate_security_context_token_fn)(
00131 const axutil_env_t *env,
00132 axiom_node_t *sct_node,
00133 axis2_msg_ctx_t *msg_ctx,
00134 void *user_params);
00135
00136
00144 AXIS2_EXTERN rampart_context_t *AXIS2_CALL
00145 rampart_context_create(
00146 const axutil_env_t *env);
00147
00148
00155 AXIS2_EXTERN void AXIS2_CALL
00156 rampart_context_free(
00157 rampart_context_t *rampart_context,
00158 const axutil_env_t *env);
00159
00160
00161
00162
00173 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00174 rampart_context_set_policy_node(rampart_context_t *rampart_context,
00175 const axutil_env_t *env,
00176 axiom_node_t *policy_node);
00177
00188 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00189 rampart_context_set_prv_key(rampart_context_t *rampart_context,
00190 const axutil_env_t *env,
00191 void *prv_key);
00201 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00202 rampart_context_set_prv_key_type(rampart_context_t *rampart_context,
00203 const axutil_env_t *env,
00204 axis2_key_type_t type);
00214 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00215 rampart_context_set_certificate(rampart_context_t *rampart_context,
00216 const axutil_env_t *env,
00217 void *certificate);
00227 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00228 rampart_context_set_certificate_type(rampart_context_t *rampart_context,
00229 const axutil_env_t *env,
00230 axis2_key_type_t type);
00241 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00242 rampart_context_set_receiver_certificate(rampart_context_t *rampart_context,
00243 const axutil_env_t *env,
00244 void *receiver_certificate);
00254 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00255 rampart_context_set_receiver_certificate_type(rampart_context_t *rampart_context,
00256 const axutil_env_t *env,
00257 axis2_key_type_t type);
00267 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00268 rampart_context_set_user(rampart_context_t *rampart_context,
00269 const axutil_env_t *env,
00270 axis2_char_t *user);
00280 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00281 rampart_context_set_password(rampart_context_t *rampart_context,
00282 const axutil_env_t *env,
00283 axis2_char_t *password);
00293 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00294 rampart_context_set_prv_key_password(rampart_context_t *rampart_context,
00295 const axutil_env_t *env,
00296 axis2_char_t *prv_key_password);
00307 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00308 rampart_context_set_pwcb_function(rampart_context_t *rampart_context,
00309 const axutil_env_t *env,
00310 password_callback_fn pwcb_function,
00311 void *user_params);
00321 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00322 rampart_context_set_replay_detect_function(rampart_context_t *rampart_context,
00323 const axutil_env_t *env,
00324 rampart_is_replayed_fn is_replayed_function,
00325 void *user_params);
00326
00332 AXIS2_EXTERN void * AXIS2_CALL
00333 rampart_context_get_rd_user_params(
00334 rampart_context_t *rampart_context,
00335 const axutil_env_t *env);
00346 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00347 rampart_context_set_password_type(rampart_context_t *rampart_context,
00348 const axutil_env_t *env,
00349 axis2_char_t *password_type);
00359 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00360 rampart_context_set_ttl(
00361 rampart_context_t *rampart_context,
00362 const axutil_env_t *env,
00363 int ttl);
00364
00365 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00366 rampart_context_set_need_millisecond_precision(
00367 rampart_context_t *rampart_context,
00368 const axutil_env_t *env,
00369 axis2_bool_t need_millisecond_precision);
00370
00371 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00372 rampart_context_set_clock_skew_buffer(
00373 rampart_context_t *rampart_context,
00374 const axutil_env_t *env,
00375 int skew_buffer);
00376
00386 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00387 rampart_context_set_rd_val(rampart_context_t *rampart_context,
00388 const axutil_env_t *env,
00389 axis2_char_t *rd_val);
00399 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00400 rampart_context_set_private_key_file(rampart_context_t *rampart_context,
00401 const axutil_env_t *env,
00402 axis2_char_t *private_key_file);
00412 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00413 rampart_context_set_certificate_file(rampart_context_t *rampart_context,
00414 const axutil_env_t *env,
00415 axis2_char_t *certificate_file);
00416
00426 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00427 rampart_context_add_key(rampart_context_t *rampart_context,
00428 const axutil_env_t *env,
00429 oxs_key_t *key);
00430
00431
00432
00433
00441 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00442 rampart_context_get_policy_node(
00443 rampart_context_t *rampart_context,
00444 const axutil_env_t *env);
00453 AXIS2_EXTERN void *AXIS2_CALL
00454 rampart_context_get_prv_key(
00455 rampart_context_t *rampart_context,
00456 const axutil_env_t *env);
00465 AXIS2_EXTERN axis2_key_type_t AXIS2_CALL
00466 rampart_context_get_prv_key_type(
00467 rampart_context_t *rampart_context,
00468 const axutil_env_t *env);
00477 AXIS2_EXTERN void *AXIS2_CALL
00478 rampart_context_get_certificate(
00479 rampart_context_t *rampart_context,
00480 const axutil_env_t *env);
00489 AXIS2_EXTERN axis2_key_type_t AXIS2_CALL
00490 rampart_context_get_certificate_type(
00491 rampart_context_t *rampart_context,
00492 const axutil_env_t *env);
00501 AXIS2_EXTERN void *AXIS2_CALL
00502 rampart_context_get_receiver_certificate(
00503 rampart_context_t *rampart_context,
00504 const axutil_env_t *env);
00513 AXIS2_EXTERN axis2_key_type_t AXIS2_CALL
00514 rampart_context_get_receiver_certificate_type(
00515 rampart_context_t *rampart_context,
00516 const axutil_env_t *env);
00525 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00526 rampart_context_get_user(
00527 rampart_context_t *rampart_context,
00528 const axutil_env_t *env);
00537 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00538 rampart_context_get_password(
00539 rampart_context_t *rampart_context,
00540 const axutil_env_t *env);
00549 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00550 rampart_context_get_prv_key_password(
00551 rampart_context_t *rampart_context,
00552 const axutil_env_t *env);
00561 AXIS2_EXTERN password_callback_fn AXIS2_CALL
00562 rampart_context_get_pwcb_function(
00563 rampart_context_t *rampart_context,
00564 const axutil_env_t *env);
00573 AXIS2_EXTERN rampart_is_replayed_fn AXIS2_CALL
00574 rampart_context_get_replay_detect_function(
00575 rampart_context_t *rampart_context,
00576 const axutil_env_t *env);
00585 AXIS2_EXTERN void * AXIS2_CALL
00586 rampart_context_get_pwcb_user_params(
00587 rampart_context_t *rampart_context,
00588 const axutil_env_t *env);
00597 AXIS2_EXTERN int AXIS2_CALL
00598 rampart_context_get_ttl(
00599 rampart_context_t *rampart_context,
00600 const axutil_env_t *env);
00601
00602 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00603 rampart_context_get_need_millisecond_precision(
00604 rampart_context_t *rampart_context,
00605 const axutil_env_t *env);
00606
00607 AXIS2_EXTERN int AXIS2_CALL
00608 rampart_context_get_clock_skew_buffer(
00609 rampart_context_t *rampart_context,
00610 const axutil_env_t *env);
00611
00620 AXIS2_EXTERN axis2_char_t* AXIS2_CALL
00621 rampart_context_get_rd_val(
00622 rampart_context_t *rampart_context,
00623 const axutil_env_t *env);
00633 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00634 rampart_context_get_password_type(
00635 rampart_context_t *rampart_context,
00636 const axutil_env_t *env);
00645 AXIS2_EXTERN axutil_array_list_t* AXIS2_CALL
00646 rampart_context_get_keys(rampart_context_t *rampart_context,
00647 const axutil_env_t *env);
00657 AXIS2_EXTERN oxs_key_t* AXIS2_CALL
00658 rampart_context_get_key(rampart_context_t *rampart_context,
00659 const axutil_env_t *env,
00660 axis2_char_t* key_id);
00670 AXIS2_EXTERN oxs_key_t* AXIS2_CALL
00671 rampart_context_get_key_using_hash(rampart_context_t *rampart_context,
00672 const axutil_env_t *env,
00673 axis2_char_t* hash);
00674
00675
00676
00677
00686 AXIS2_EXTERN rp_secpolicy_t *AXIS2_CALL
00687 rampart_context_get_secpolicy(
00688 rampart_context_t *rampart_context,
00689 const axutil_env_t *env);
00699 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00700 rampart_context_set_secpolicy(rampart_context_t *rampart_context,
00701 const axutil_env_t *env,
00702 rp_secpolicy_t *secpolicy);
00711 AXIS2_EXTERN rampart_callback_t *AXIS2_CALL
00712 rampart_context_get_password_callback(
00713 rampart_context_t *rampart_context,
00714 const axutil_env_t *env);
00723 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00724 rampart_context_set_password_callback(rampart_context_t *rampart_context,
00725 const axutil_env_t *env,
00726 rampart_callback_t *password_callback_module);
00736 AXIS2_EXTERN auth_password_func AXIS2_CALL
00737 rampart_context_get_auth_password_function(
00738 rampart_context_t *rampart_context,
00739 const axutil_env_t *env);
00749 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00750 rampart_context_set_auth_password_function(rampart_context_t *rampart_context,
00751 const axutil_env_t *env,
00752 auth_password_func authenticate_with_password);
00761 AXIS2_EXTERN auth_digest_func AXIS2_CALL
00762 rampart_context_get_auth_digest_function(
00763 rampart_context_t *rampart_context,
00764 const axutil_env_t *env);
00774 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00775 rampart_context_set_auth_digest_function(rampart_context_t *rampart_context,
00776 const axutil_env_t *env,
00777 auth_digest_func authenticate_with_digest);
00786 AXIS2_EXTERN rampart_authn_provider_t *AXIS2_CALL
00787 rampart_context_get_authn_provider(
00788 rampart_context_t *rampart_context,
00789 const axutil_env_t *env);
00797 AXIS2_EXTERN void *AXIS2_CALL
00798 rampart_context_get_replay_detector(
00799 rampart_context_t *rampart_context,
00800 const axutil_env_t *env);
00809 AXIS2_EXTERN void *AXIS2_CALL
00810 rampart_context_get_sct_provider(
00811 rampart_context_t *rampart_context,
00812 const axutil_env_t *env);
00822 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00823 rampart_context_set_authn_provider(rampart_context_t *rampart_context,
00824 const axutil_env_t *env,
00825 rampart_authn_provider_t *authn_provider);
00835 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00836 rampart_context_set_replay_detector(rampart_context_t *rampart_context,
00837 const axutil_env_t *env,
00838 void *replay_detector);
00848 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00849 rampart_context_set_sct_provider(rampart_context_t *rampart_context,
00850 const axutil_env_t *env,
00851 void *sct_module);
00860 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00861 rampart_context_get_require_timestamp(
00862 rampart_context_t *rampart_context,
00863 const axutil_env_t *env);
00872 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00873 rampart_context_get_require_ut(
00874 rampart_context_t *rampart_context,
00875 const axutil_env_t *env);
00884 AXIS2_EXTERN rp_property_type_t AXIS2_CALL
00885 rampart_context_get_binding_type(
00886 rampart_context_t *rampart_context,
00887 const axutil_env_t *env);
00896 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00897 rampart_context_is_include_timestamp(
00898 rampart_context_t *rampart_context,
00899 const axutil_env_t *env);
00908 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00909 rampart_context_is_include_username_token(
00910 rampart_context_t *rampart_context,
00911 const axutil_env_t *env);
00923 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00924 rampart_context_is_include_supporting_token(
00925 rampart_context_t *rampart_context, const axutil_env_t *env,
00926 axis2_bool_t server_side, axis2_bool_t is_inpath,
00927 rp_property_type_t token_type);
00938 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00939 rampart_context_is_include_protection_saml_token(
00940 rampart_context_t *rampart_context, axis2_bool_t server_side,
00941 axis2_bool_t is_inpath, const axutil_env_t *env);
00951 AXIS2_EXTERN rp_property_t * AXIS2_CALL
00952 rampart_context_get_supporting_token(
00953 rampart_context_t *rampart_context,
00954 const axutil_env_t *env, rp_property_type_t token_type);
00963 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00964 rampart_context_get_password_callback_class(
00965 rampart_context_t *rampart_context,
00966 const axutil_env_t *env);
00975 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00976 rampart_context_get_authn_module_name(
00977 rampart_context_t *rampart_context,
00978 const axutil_env_t *env);
00987 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00988 rampart_context_get_replay_detector_name(
00989 rampart_context_t *rampart_context,
00990 const axutil_env_t *env);
00999 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01000 rampart_context_get_sct_provider_name(
01001 rampart_context_t *rampart_context,
01002 const axutil_env_t *env);
01011 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01012 rampart_context_is_encrypt_before_sign(
01013 rampart_context_t *rampart_context,
01014 const axutil_env_t *env);
01023 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01024 rampart_context_is_encrypt_signature(
01025 rampart_context_t *rampart_context,
01026 const axutil_env_t *env);
01037 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01038 rampart_context_get_nodes_to_encrypt(
01039 rampart_context_t *rampart_context,
01040 const axutil_env_t *env,
01041 axiom_soap_envelope_t *soap_envelope,
01042 axutil_array_list_t *nodes_to_encrypt);
01053 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01054 rampart_context_get_nodes_to_sign(
01055 rampart_context_t *rampart_context,
01056 const axutil_env_t *env,
01057 axiom_soap_envelope_t *soap_envelope,
01058 axutil_array_list_t *nodes_to_sign);
01069 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01070 rampart_context_get_elements_to_encrypt(
01071 rampart_context_t *rampart_context,
01072 const axutil_env_t *env,
01073 axiom_soap_envelope_t *soap_envelope,
01074 axutil_array_list_t *nodes_to_encrypt);
01085 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01086 rampart_context_get_elements_to_sign(
01087 rampart_context_t *rampart_context,
01088 const axutil_env_t *env,
01089 axiom_soap_envelope_t *soap_envelope,
01090 axutil_array_list_t *nodes_to_sign);
01102 AXIS2_EXTERN rp_property_t *AXIS2_CALL
01103 rampart_context_get_token(
01104 rampart_context_t *rampart_context,
01105 const axutil_env_t *env,
01106 axis2_bool_t for_encryption,
01107 axis2_bool_t server_side,
01108 axis2_bool_t is_inpath);
01117 AXIS2_EXTERN rp_property_t *AXIS2_CALL
01118 rampart_context_get_endorsing_token(
01119 rampart_context_t *rampart_context,
01120 const axutil_env_t *env);
01127 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01128 rampart_context_check_is_derived_keys(
01129 const axutil_env_t *env,
01130 rp_property_t *token);
01131
01137 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01138 rampart_context_get_derived_key_version(
01139 const axutil_env_t *env,
01140 rp_property_t *token);
01141
01150 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01151 rampart_context_get_enc_sym_algo(
01152 rampart_context_t *rampart_context,
01153 const axutil_env_t *env);
01162 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01163 rampart_context_get_enc_asym_algo(
01164 rampart_context_t *rampart_context,
01165 const axutil_env_t *env);
01174 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01175 rampart_context_get_asym_sig_algo(
01176 rampart_context_t *rampart_context,
01177 const axutil_env_t *env);
01186 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01187 rampart_context_get_digest_mtd(
01188 rampart_context_t *rampart_context,
01189 const axutil_env_t *env);
01198 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01199 rampart_context_get_encryption_user(
01200 rampart_context_t *rampart_context,
01201 const axutil_env_t *env);
01214 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01215 rampart_context_is_token_include(
01216 rampart_context_t *rampart_context,
01217 rp_property_t *token,
01218 rp_property_type_t token_type,
01219 axis2_bool_t server_side,
01220 axis2_bool_t is_inpath,
01221 const axutil_env_t *env);
01231 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01232 rampart_context_get_key_identifier(
01233 rampart_context_t *rampart_context,
01234 rp_property_t *token,
01235 const axutil_env_t *env);
01244 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01245 rampart_context_is_token_type_supported(
01246 rp_property_type_t token_type,
01247 const axutil_env_t *env);
01258 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01259 rampart_context_is_key_identifier_type_supported(
01260 rampart_context_t *rampart_context,
01261 rp_property_t *token,
01262 axis2_char_t *identifier,
01263 const axutil_env_t *env);
01272 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01273 rampart_context_get_layout(
01274 rampart_context_t *rampart_context,
01275 const axutil_env_t *env);
01284 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01285 rampart_context_check_whether_to_encrypt(
01286 rampart_context_t *rampart_context,
01287 const axutil_env_t *env);
01296 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01297 rampart_context_check_whether_to_sign(
01298 rampart_context_t *rampart_context,
01299 const axutil_env_t *env);
01308 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01309 rampart_context_set_user_from_file(
01310 rampart_context_t *rampart_context,
01311 const axutil_env_t *env);
01320 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01321 rampart_context_set_password_type_from_file(
01322 rampart_context_t *rampart_context,
01323 const axutil_env_t *env);
01332 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01333 rampart_context_get_certificate_file(
01334 rampart_context_t *rampart_context,
01335 const axutil_env_t *env);
01344 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01345 rampart_context_get_receiver_certificate_file(
01346 rampart_context_t *rampart_context,
01347 const axutil_env_t *env);
01356 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01357 rampart_context_get_private_key_file(
01358 rampart_context_t *rampart_context,
01359 const axutil_env_t *env);
01368 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01369 rampart_context_set_ttl_from_file(
01370 rampart_context_t *rampart_context,
01371 const axutil_env_t *env);
01372
01373 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01374 rampart_context_set_clock_skew_buffer_from_file(
01375 rampart_context_t *rampart_context,
01376 const axutil_env_t *env);
01377
01378 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01379 rampart_context_set_need_millisecond_precision_from_file(
01380 rampart_context_t *rampart_context,
01381 const axutil_env_t *env);
01382
01391 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01392 rampart_context_set_rd_val_from_file(
01393 rampart_context_t *rampart_context,
01394 const axutil_env_t *env);
01403 AXIS2_EXTERN oxs_key_t *AXIS2_CALL
01404 rampart_context_get_encryption_session_key(
01405 rampart_context_t *rampart_context,
01406 const axutil_env_t *env);
01416 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01417 rampart_context_set_encryption_session_key(
01418 rampart_context_t *rampart_context,
01419 const axutil_env_t *env,
01420 oxs_key_t *session_key);
01429 AXIS2_EXTERN oxs_key_t *AXIS2_CALL
01430 rampart_context_get_signature_session_key(
01431 rampart_context_t *rampart_context,
01432 const axutil_env_t *env);
01442 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01443 rampart_context_set_signature_session_key(
01444 rampart_context_t *rampart_context,
01445 const axutil_env_t *env,
01446 oxs_key_t *session_key);
01455 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01456 rampart_context_increment_ref(
01457 rampart_context_t *rampart_context,
01458 const axutil_env_t *env);
01467 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01468 rampart_context_is_sig_confirmation_reqd(
01469 rampart_context_t *rampart_context,
01470 const axutil_env_t *env);
01479 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01480 rampart_context_get_encryption_token_id(
01481 rampart_context_t *rampart_context,
01482 const axutil_env_t *env,
01483 axis2_msg_ctx_t* msg_ctx);
01492 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01493 rampart_context_get_signature_token_id(
01494 rampart_context_t *rampart_context,
01495 const axutil_env_t *env,
01496 axis2_msg_ctx_t* msg_ctx);
01506 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01507 rampart_context_set_encryption_token_id(
01508 rampart_context_t *rampart_context,
01509 const axutil_env_t *env,
01510 axis2_char_t *sct_id,
01511 axis2_msg_ctx_t* msg_ctx);
01521 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01522 rampart_context_set_signature_token_id(
01523 rampart_context_t *rampart_context,
01524 const axutil_env_t *env,
01525 axis2_char_t *sct_id,
01526 axis2_msg_ctx_t* msg_ctx);
01527
01528
01529
01539 AXIS2_EXTERN rampart_saml_token_t * AXIS2_CALL
01540 rampart_context_get_saml_token(rampart_context_t *rampart_context,
01541 const axutil_env_t *env,
01542 rampart_st_type_t token_type);
01543
01544
01554 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01555 rampart_context_add_saml_token(rampart_context_t *rampart_context,
01556 const axutil_env_t *env,
01557 rampart_saml_token_t *token);
01567 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01568 rampart_context_set_saml_tokens(
01569 rampart_context_t *rampart_context,
01570 const axutil_env_t *env,
01571 axutil_array_list_t *tokens);
01580 AXIS2_EXTERN issued_token_callback_func AXIS2_CALL
01581 rampart_context_get_issued_token_aquire_function(
01582 rampart_context_t *rampart_context,
01583 const axutil_env_t *env);
01593 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01594 rampart_context_set_issued_token_aquire_function(
01595 rampart_context_t *rampart_context,
01596 const axutil_env_t *env,
01597 issued_token_callback_func issued_token_aquire);
01606 AXIS2_EXTERN int AXIS2_CALL
01607 rampart_context_get_encryption_derived_key_len(
01608 rampart_context_t *rampart_context,
01609 const axutil_env_t *env);
01618 AXIS2_EXTERN int AXIS2_CALL
01619 rampart_context_get_signature_derived_key_len(
01620 rampart_context_t *rampart_context,
01621 const axutil_env_t *env);
01630 AXIS2_EXTERN rp_algorithmsuite_t *AXIS2_CALL
01631 rampart_context_get_algorithmsuite(
01632 rampart_context_t *rampart_context,
01633 const axutil_env_t *env);
01634
01641 AXIS2_EXTERN oxs_key_mgr_t * AXIS2_CALL
01642 rampart_context_get_key_mgr(
01643 rampart_context_t *rampart_context,
01644 const axutil_env_t *env);
01645
01653 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01654 rampart_context_set_key_mgr(
01655 rampart_context_t *rampart_context,
01656 const axutil_env_t *env,
01657 oxs_key_mgr_t *key_mgr);
01658
01665 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01666 rampart_context_get_pkcs12_file_name(
01667 rampart_context_t *rampart_context,
01668 const axutil_env_t *env);
01669
01679 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01680 rampart_context_set_custom_tokens(rampart_context_t *rampart_context,
01681 const axutil_env_t *env,
01682 axutil_array_list_t *tokens);
01683
01691 AXIS2_EXTERN axutil_array_list_t* AXIS2_CALL
01692 rampart_context_get_custom_tokens(rampart_context_t *rampart_context,
01693 const axutil_env_t *env);
01694
01701 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
01702 rampart_context_get_receiver_certificate_file(
01703 rampart_context_t *rampart_context,
01704 const axutil_env_t *env);
01705
01712 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01713 rampart_context_get_found_cert_in_shp(
01714 rampart_context_t *rampart_context,
01715 const axutil_env_t *env);
01716
01724 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01725 rampart_context_set_found_cert_in_shp(
01726 rampart_context_t *rampart_context,
01727 const axutil_env_t *env,
01728 axis2_bool_t found_cert_in_shp);
01729
01736 AXIS2_EXTERN oxs_x509_cert_t *AXIS2_CALL
01737 rampart_context_get_receiver_cert_found_in_shp(
01738 rampart_context_t *rampart_context,
01739 const axutil_env_t *env);
01740
01748 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01749 rampart_context_set_receiver_cert_found_in_shp(
01750 rampart_context_t *rampart_context,
01751 const axutil_env_t *env,
01752 oxs_x509_cert_t *cert);
01753
01754 AXIS2_EXTERN void * AXIS2_CALL
01755 rampart_context_get_key_store_buff(
01756 rampart_context_t *rampart_context,
01757 const axutil_env_t *env);
01758
01759 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01760 rampart_context_set_key_store_buff(
01761 rampart_context_t *rampart_context,
01762 const axutil_env_t *env,
01763 void *key_store_buf,
01764 int length);
01765
01773 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01774 rampart_context_set_store_security_context_token_fn(
01775 rampart_context_t *rampart_context,
01776 const axutil_env_t *env,
01777 store_security_context_token_fn store_fn);
01778
01786 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01787 rampart_context_set_obtain_security_context_token_fn(
01788 rampart_context_t *rampart_context,
01789 const axutil_env_t *env,
01790 obtain_security_context_token_fn get_fn);
01791
01799 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01800 rampart_context_set_delete_security_context_token_fn(
01801 rampart_context_t *rampart_context,
01802 const axutil_env_t *env,
01803 delete_security_context_token_fn delete_fn);
01804
01812 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01813 rampart_context_set_security_context_token_user_params(
01814 rampart_context_t *rampart_context,
01815 const axutil_env_t *env,
01816 void* user_params);
01817
01825 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01826 rampart_context_set_validate_security_context_token_fn(
01827 rampart_context_t *rampart_context,
01828 const axutil_env_t *env,
01829 validate_security_context_token_fn validate_fn);
01830
01837 AXIS2_EXTERN store_security_context_token_fn AXIS2_CALL
01838 rampart_context_get_store_security_context_token_fn(
01839 rampart_context_t *rampart_context,
01840 const axutil_env_t *env);
01841
01848 AXIS2_EXTERN obtain_security_context_token_fn AXIS2_CALL
01849 rampart_context_get_obtain_security_context_token_fn(
01850 rampart_context_t *rampart_context,
01851 const axutil_env_t *env);
01852
01859 AXIS2_EXTERN delete_security_context_token_fn AXIS2_CALL
01860 rampart_context_get_delete_security_context_token_fn(
01861 rampart_context_t *rampart_context,
01862 const axutil_env_t *env);
01863
01871 AXIS2_EXTERN void* AXIS2_CALL
01872 rampart_context_get_security_context_token_user_params(
01873 rampart_context_t *rampart_context,
01874 const axutil_env_t *env);
01875
01882 AXIS2_EXTERN validate_security_context_token_fn AXIS2_CALL
01883 rampart_context_get_validate_security_context_token_fn(
01884 rampart_context_t *rampart_context,
01885 const axutil_env_t *env);
01886
01893 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
01894 rampart_context_is_different_session_key_for_enc_and_sign(
01895 const axutil_env_t *env,
01896 rampart_context_t *rampart_context);
01897
01898 AXIS2_EXTERN axis2_status_t AXIS2_CALL
01899 rampart_context_set_receiver_certificate_file(
01900 rampart_context_t *rampart_context,
01901 const axutil_env_t *env,
01902 axis2_char_t *receiver_certificate_file);
01903
01904
01905
01906 #ifdef __cplusplus
01907 }
01908 #endif
01909 #endif