| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| #ifndef RAMPART_CONTEXT_H |
| #define RAMPART_CONTEXT_H |
| |
| /** |
| * @file rampart_context.h |
| * @brief The Rampart Context, in which configurations are stored |
| */ |
| |
| /** |
| * @defgroup rampart_context Rampart Context |
| * @ingroup rampart_utils |
| * @{ |
| */ |
| |
| #include <rp_includes.h> |
| #include <rp_secpolicy.h> |
| #include <rampart_authn_provider.h> |
| #include <axutil_property.h> |
| #include <rampart_constants.h> |
| #include <rampart_callback.h> |
| #include <rampart_authn_provider.h> |
| #include <axis2_key_type.h> |
| #include <axis2_msg_ctx.h> |
| #include <oxs_key.h> |
| #include <axutil_array_list.h> |
| #include <rampart_saml_token.h> |
| #include <rampart_issued_token.h> |
| #include <oxs_key_mgr.h> |
| |
| #ifdef __cplusplus |
| extern "C" |
| { |
| #endif |
| |
| typedef struct rampart_context_t rampart_context_t; |
| |
| typedef axis2_char_t *(AXIS2_CALL* |
| password_callback_fn)( |
| const axutil_env_t *env, |
| const axis2_char_t *username, |
| void *user_params); |
| |
| typedef axis2_status_t (AXIS2_CALL* |
| rampart_is_replayed_fn)( |
| const axutil_env_t *env, |
| axis2_msg_ctx_t* msg_ctx, |
| rampart_context_t *rampart_context, |
| void *user_params); |
| |
| typedef rampart_authn_provider_status_t (AXIS2_CALL* |
| auth_password_func)( |
| const axutil_env_t* env, |
| const axis2_char_t *username, |
| const axis2_char_t *password, |
| void *ctx); |
| |
| typedef rampart_authn_provider_status_t (AXIS2_CALL* |
| auth_digest_func)( |
| const axutil_env_t* env, |
| const axis2_char_t *username, |
| const axis2_char_t *nonce, |
| const axis2_char_t *created, |
| const char *digest, |
| void *ctx); |
| |
| /* This function will be used to store sct. Global id, local id will be given so function |
| * writer can store them in anyway. Get or Delete method will use any of the Global id or local |
| * id, so Store function writer should be ready for that. |
| */ |
| typedef axis2_status_t (AXIS2_CALL* |
| store_security_context_token_fn)( |
| const axutil_env_t *env, |
| axis2_msg_ctx_t* msg_ctx, |
| axis2_char_t *sct_global_id, |
| axis2_char_t *sct_local_id, |
| void *sct, |
| void *user_params); |
| |
| /* This function will be called to get previously stored sct. If secure conversation token is |
| * referred by this method, then sct_id will be not null. However, if security context token |
| * (pre-agreed and established offline) is refered then sct_id might be NULL. is_encryption is |
| * passed, so that if pre-agreed sct is different for encryption and signature, then it could be |
| * accessed. sct_id_type will be RAMPART_SCT_ID_TYPE_LOCAL or RAMPART_SCT_ID_TYPE_GLOBAL if |
| * sct_id is NOT NULL. If sct_id is NULL, then sct_id_type will be RAMPART_SCT_ID_TYPE_UNKNOWN |
| */ |
| typedef void* (AXIS2_CALL* |
| obtain_security_context_token_fn)( |
| const axutil_env_t *env, |
| axis2_bool_t is_encryption, |
| axis2_msg_ctx_t* msg_ctx, |
| axis2_char_t *sct_id, |
| int sct_id_type, |
| void* user_params); |
| |
| /* This function will be called to delete previously stored sct. sct_id_type can be |
| * RAMPART_SCT_ID_TYPE_LOCAL or RAMPART_SCT_ID_TYPE_GLOBAL |
| */ |
| typedef axis2_status_t (AXIS2_CALL* |
| delete_security_context_token_fn)( |
| const axutil_env_t *env, |
| axis2_msg_ctx_t* msg_ctx, |
| axis2_char_t *sct_id, |
| int sct_id_type, |
| void* user_params); |
| |
| /* Validates whether security context token is valid or not. Normally, we can directly send |
| * true as response. But if syntax of security context token is altered/added by using |
| * extensible mechanism (e.g having sessions, etc.) then user can implement this method. |
| * Axiom representation of the sct will be given as the parameter, because if sct is |
| * extended, we don't know the syntax. Method writer can implement whatever needed. |
| */ |
| typedef axis2_status_t (AXIS2_CALL* |
| validate_security_context_token_fn)( |
| const axutil_env_t *env, |
| axiom_node_t *sct_node, |
| axis2_msg_ctx_t *msg_ctx, |
| void *user_params); |
| |
| |
| /** |
| * Create a rampart_context.rampart_context is the wrapper |
| * of secpolicy and the main configuration for rampart. |
| * @param env pointer to environment struct,Must not be NULL. |
| * @return ramaprt_context_t* on successful creation.Else NULL; |
| */ |
| |
| AXIS2_EXTERN rampart_context_t *AXIS2_CALL |
| rampart_context_create( |
| const axutil_env_t *env); |
| |
| |
| /** |
| * Frees a rampart_context. |
| * @param rampart_context the rampart_context |
| * @env pointer to environment struct,Must not be NULL. |
| */ |
| |
| AXIS2_EXTERN void AXIS2_CALL |
| rampart_context_free( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| |
| /****************************************************************/ |
| |
| /** |
| * Sets the policy node which is an om_node containing policy.This om_node |
| * can be build outside rampart. |
| * @param rampart_context the rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param policy_node is an axiom_node. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_policy_node(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axiom_node_t *policy_node); |
| |
| /** |
| * Sets private key of sender as a buffer.This can be |
| * set from outside rampart. |
| * @param rampart_context the rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param prv_key is a void buffer. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_prv_key(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *prv_key); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_prv_key_type(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_key_type_t type); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param certificate |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_certificate(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *certificate); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_certificate_type(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_key_type_t type); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * @param receiver_certificate |
| * returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_receiver_certificate(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *receiver_certificate); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_receiver_certificate_type(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_key_type_t type); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param user |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_user(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *user); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param password |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_password(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *password); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param prv_key_password |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_prv_key_password(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *prv_key_password); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param pwcb_function |
| * @param ctx |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_pwcb_function(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| password_callback_fn pwcb_function, |
| void *user_params); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param is_replayed_function |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_replay_detect_function(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rampart_is_replayed_fn is_replayed_function, |
| void *user_params); |
| |
| /** |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns user parameters for replay detector function or NULL |
| */ |
| AXIS2_EXTERN void * AXIS2_CALL |
| rampart_context_get_rd_user_params( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param password_type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_password_type(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *password_type); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param ttl |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_ttl( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| int ttl); |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_need_millisecond_precision( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_bool_t need_millisecond_precision); |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_clock_skew_buffer( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| int skew_buffer); |
| |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param rd_val |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_rd_val(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *rd_val); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param private_key_file |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_private_key_file(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *private_key_file); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param cerficate_file |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_certificate_file(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *certificate_file); |
| |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param key |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_add_key(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| oxs_key_t *key); |
| |
| /**********************************************************8*/ |
| |
| /*Getters of the above set functions*/ |
| /** |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axiom_node_t *AXIS2_CALL |
| rampart_context_get_policy_node( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void *AXIS2_CALL |
| rampart_context_get_prv_key( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_key_type_t AXIS2_CALL |
| rampart_context_get_prv_key_type( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void *AXIS2_CALL |
| rampart_context_get_certificate( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_key_type_t AXIS2_CALL |
| rampart_context_get_certificate_type( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void *AXIS2_CALL |
| rampart_context_get_receiver_certificate( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_key_type_t AXIS2_CALL |
| rampart_context_get_receiver_certificate_type( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_user( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_password( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_prv_key_password( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN password_callback_fn AXIS2_CALL |
| rampart_context_get_pwcb_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rampart_is_replayed_fn AXIS2_CALL |
| rampart_context_get_replay_detect_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void * AXIS2_CALL |
| rampart_context_get_pwcb_user_params( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN int AXIS2_CALL |
| rampart_context_get_ttl( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_get_need_millisecond_precision( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| AXIS2_EXTERN int AXIS2_CALL |
| rampart_context_get_clock_skew_buffer( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t* AXIS2_CALL |
| rampart_context_get_rd_val( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_password_type( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axutil_array_list_t* AXIS2_CALL |
| rampart_context_get_keys(rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param key_id |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN oxs_key_t* AXIS2_CALL |
| rampart_context_get_key(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t* key_id); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param hash |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN oxs_key_t* AXIS2_CALL |
| rampart_context_get_key_using_hash(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t* hash); |
| |
| /*End of Getters */ |
| |
| /*Rampart specific functions */ |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_secpolicy_t *AXIS2_CALL |
| rampart_context_get_secpolicy( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param secpolicy |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_secpolicy(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rp_secpolicy_t *secpolicy); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rampart_callback_t *AXIS2_CALL |
| rampart_context_get_password_callback( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_password_callback(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rampart_callback_t *password_callback_module); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param password_callback_module |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN auth_password_func AXIS2_CALL |
| rampart_context_get_auth_password_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param authentication_with_password |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_auth_password_function(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| auth_password_func authenticate_with_password); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN auth_digest_func AXIS2_CALL |
| rampart_context_get_auth_digest_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param authentication_with_digest |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_auth_digest_function(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| auth_digest_func authenticate_with_digest); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rampart_authn_provider_t *AXIS2_CALL |
| rampart_context_get_authn_provider( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void *AXIS2_CALL |
| rampart_context_get_replay_detector( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN void *AXIS2_CALL |
| rampart_context_get_sct_provider( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param authn_provider |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_authn_provider(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rampart_authn_provider_t *authn_provider); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param replay_detector |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_replay_detector(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *replay_detector); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param sct_module |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_sct_provider(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *sct_module); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_get_require_timestamp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_get_require_ut( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_property_type_t AXIS2_CALL |
| rampart_context_get_binding_type( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_include_timestamp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_include_username_token( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param server_side |
| * @param is_inpath |
| * @param token_type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_include_supporting_token( |
| rampart_context_t *rampart_context, const axutil_env_t *env, |
| axis2_bool_t server_side, axis2_bool_t is_inpath, |
| rp_property_type_t token_type); |
| /** |
| * |
| * @param rampart_context |
| * @param server_side |
| * @param is_inpath |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_include_protection_saml_token( |
| rampart_context_t *rampart_context, axis2_bool_t server_side, |
| axis2_bool_t is_inpath, const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param token_type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_property_t * AXIS2_CALL |
| rampart_context_get_supporting_token( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, rp_property_type_t token_type); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_password_callback_class( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_authn_module_name( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_replay_detector_name( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_sct_provider_name( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_encrypt_before_sign( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_encrypt_signature( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param soap_envelope |
| * @param nodes_to_encrypt |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_get_nodes_to_encrypt( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axiom_soap_envelope_t *soap_envelope, |
| axutil_array_list_t *nodes_to_encrypt); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param soap_envelope |
| * @param nodes_to_sign |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_get_nodes_to_sign( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axiom_soap_envelope_t *soap_envelope, |
| axutil_array_list_t *nodes_to_sign); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param soap_envelope |
| * @param nodes_to_encrypt |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_get_elements_to_encrypt( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axiom_soap_envelope_t *soap_envelope, |
| axutil_array_list_t *nodes_to_encrypt); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param soap_envelope |
| * @param nodes_to_sign |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_get_elements_to_sign( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axiom_soap_envelope_t *soap_envelope, |
| axutil_array_list_t *nodes_to_sign); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * @param for_encryption |
| * @param sever_side |
| * @param is_inpath |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_property_t *AXIS2_CALL |
| rampart_context_get_token( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_bool_t for_encryption, |
| axis2_bool_t server_side, |
| axis2_bool_t is_inpath); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_property_t *AXIS2_CALL |
| rampart_context_get_endorsing_token( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param token |
| * @returns whether derived key needed or not |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_check_is_derived_keys( |
| const axutil_env_t *env, |
| rp_property_t *token); |
| |
| /** |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param token |
| * @returns derived key version. NULL on error. |
| */ |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_derived_key_version( |
| const axutil_env_t *env, |
| rp_property_t *token); |
| |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_enc_sym_algo( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_enc_asym_algo( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_asym_sig_algo( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_digest_mtd( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_encryption_user( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param token |
| * @param token_type |
| * @param server_side |
| * @param is_inpath |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_token_include( |
| rampart_context_t *rampart_context, |
| rp_property_t *token, |
| rp_property_type_t token_type, |
| axis2_bool_t server_side, |
| axis2_bool_t is_inpath, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param token |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_key_identifier( |
| rampart_context_t *rampart_context, |
| rp_property_t *token, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param token_type |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_token_type_supported( |
| rp_property_type_t token_type, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param token |
| * @param identifier |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_key_identifier_type_supported( |
| rampart_context_t *rampart_context, |
| rp_property_t *token, |
| axis2_char_t *identifier, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_layout( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_check_whether_to_encrypt( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_check_whether_to_sign( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_user_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_password_type_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_certificate_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_receiver_certificate_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_private_key_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_ttl_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_clock_skew_buffer_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_need_millisecond_precision_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_rd_val_from_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN oxs_key_t *AXIS2_CALL |
| rampart_context_get_encryption_session_key( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param session_key |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_encryption_session_key( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| oxs_key_t *session_key); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN oxs_key_t *AXIS2_CALL |
| rampart_context_get_signature_session_key( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param session_key |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_signature_session_key( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| oxs_key_t *session_key); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_increment_ref( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_is_sig_confirmation_reqd( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_encryption_token_id( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_msg_ctx_t* msg_ctx); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_signature_token_id( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_msg_ctx_t* msg_ctx); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param sct_id |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_encryption_token_id( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *sct_id, |
| axis2_msg_ctx_t* msg_ctx); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param sct_id |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_signature_token_id( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_char_t *sct_id, |
| axis2_msg_ctx_t* msg_ctx); |
| |
| |
| /* Return the saml token of token type set in the rampart context */ |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param token_type |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rampart_saml_token_t * AXIS2_CALL |
| rampart_context_get_saml_token(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rampart_st_type_t token_type); |
| |
| /* Add a saml token */ |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param token |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_add_saml_token(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| rampart_saml_token_t *token); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param tokens |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_saml_tokens( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axutil_array_list_t *tokens); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN issued_token_callback_func AXIS2_CALL |
| rampart_context_get_issued_token_aquire_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param issued_token_aquire |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_issued_token_aquire_function( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| issued_token_callback_func issued_token_aquire); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN int AXIS2_CALL |
| rampart_context_get_encryption_derived_key_len( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN int AXIS2_CALL |
| rampart_context_get_signature_derived_key_len( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| /** |
| * |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| |
| AXIS2_EXTERN rp_algorithmsuite_t *AXIS2_CALL |
| rampart_context_get_algorithmsuite( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the key manager from rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param Pointer to environment struct |
| * @returns pointer Key manager struct |
| */ |
| AXIS2_EXTERN oxs_key_mgr_t * AXIS2_CALL |
| rampart_context_get_key_mgr( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Set the key manager to rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param Pointer to environment struct |
| * @param key_mgr Pointer to key manager struct. |
| * @returns status of the operation. AXIS2_SUCCESS on success AXIS2_FAILURE otherwise. |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_key_mgr( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| oxs_key_mgr_t *key_mgr); |
| |
| /** |
| * Get the pkcs12 file name from rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param Pointer to environment struct |
| * @returns PKCS12 file name |
| */ |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_pkcs12_file_name( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Set the a node list to the context. These nodes will be append to |
| * the Security header |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @param tokens the token list as an array |
| * @returns status of the op. |
| * AXIS2_SUCCESS on success and AXIS2_FAILURE on error |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_custom_tokens(rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axutil_array_list_t *tokens); |
| |
| /** |
| * Get the node or the token list as an array. If the size is 0 |
| * that means there are no custom tokens specified by the client |
| * @param rampart_context |
| * @param env pointer to environment struct,Must not be NULL. |
| * @returns the custom tokens list |
| */ |
| AXIS2_EXTERN axutil_array_list_t* AXIS2_CALL |
| rampart_context_get_custom_tokens(rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the receiver certificate file name from rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns Receiver certificate file name |
| */ |
| AXIS2_EXTERN axis2_char_t *AXIS2_CALL |
| rampart_context_get_receiver_certificate_file( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the found_cert_in_shp from rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns axis2_bool_t |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| rampart_context_get_found_cert_in_shp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Set the certificate found status to rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param found_cert_in_shp boolean value which specify the certificate found status |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_found_cert_in_shp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| axis2_bool_t found_cert_in_shp); |
| |
| /** |
| * Get the certificate found in shp from rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns oxs_x509_cert_t Client certificate found when processing sec header, otherwise NULL |
| */ |
| AXIS2_EXTERN oxs_x509_cert_t *AXIS2_CALL |
| rampart_context_get_receiver_cert_found_in_shp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Set the found_cert_in_shp to rampart context. |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param cert pointer to the certficate |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_receiver_cert_found_in_shp( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| oxs_x509_cert_t *cert); |
| |
| AXIS2_EXTERN void * AXIS2_CALL |
| rampart_context_get_key_store_buff( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_key_store_buff( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void *key_store_buf, |
| int length); |
| |
| /** |
| * Set the function used to store security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param store_fn funtion pointer used to store sct |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_store_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| store_security_context_token_fn store_fn); |
| |
| /** |
| * Set the function used to get security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param get_fn funtion pointer used to get stored sct |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_obtain_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| obtain_security_context_token_fn get_fn); |
| |
| /** |
| * Set the function used to delete security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param delete_fn funtion pointer used to delete stored sct |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_delete_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| delete_security_context_token_fn delete_fn); |
| |
| /** |
| * Set the user parameters used to invoke security context token related funtions |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param user_params pointer to user params |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_security_context_token_user_params( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| void* user_params); |
| |
| /** |
| * Set the function used to validate security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param validate_fn funtion pointer used to validate sct |
| * @returns status of the operation |
| */ |
| AXIS2_EXTERN axis2_status_t AXIS2_CALL |
| rampart_context_set_validate_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env, |
| validate_security_context_token_fn validate_fn); |
| |
| /** |
| * Get the function used to store security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns untion pointer used to store sct |
| */ |
| AXIS2_EXTERN store_security_context_token_fn AXIS2_CALL |
| rampart_context_get_store_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the function used to get security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns funtion pointer used to get stored sct |
| */ |
| AXIS2_EXTERN obtain_security_context_token_fn AXIS2_CALL |
| rampart_context_get_obtain_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the function used to delete security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns funtion pointer used to delete stored sct |
| */ |
| AXIS2_EXTERN delete_security_context_token_fn AXIS2_CALL |
| rampart_context_get_delete_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the user parameters used to invoke security context token related funtions |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @param user_params pointer to user params |
| * @returns pointer to user parameter. |
| */ |
| AXIS2_EXTERN void* AXIS2_CALL |
| rampart_context_get_security_context_token_user_params( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * Get the function used to validate security context token |
| * @param rampart_context Pointer to rampart context struct. |
| * @param env Pointer to environment struct |
| * @returns funtion pointer used to validate sct |
| */ |
| AXIS2_EXTERN validate_security_context_token_fn AXIS2_CALL |
| rampart_context_get_validate_security_context_token_fn( |
| rampart_context_t *rampart_context, |
| const axutil_env_t *env); |
| |
| /** |
| * check whether different keys are needed for encryption and signature |
| * @param env pointer to environment struct |
| * @param rampart_context rampart context |
| * @return AXIS2_TRUE if different keys are needed. AXIS2_FALSE otherwise. |
| */ |
| AXIS2_EXTERN axis2_bool_t AXIS2_CALL |
| is_different_session_key_for_encryption_and_signing( |
| const axutil_env_t *env, |
| rampart_context_t *rampart_context); |
| |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif |