00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef RAMPART_SAML_TOKEN_H
00019 #define RAMPART_SAML_TOKEN_H
00020
00021 #include <rampart_saml_token.h>
00022 #include <oxs_saml_token.h>
00023 #include <axutil_utils.h>
00024 #include <axiom.h>
00025 #include <axis2_msg_ctx.h>
00026 #include <oxs_key.h>
00027 #include <rp_property.h>
00028
00029 #ifdef __cplusplus
00030 extern "C"
00031 {
00032 #endif
00033
00034
00035
00036
00037
00038 typedef enum
00039 {
00040 RAMPART_ST_CONFIR_TYPE_UNSPECIFIED = 0,
00041 RAMPART_ST_CONFIR_TYPE_SENDER_VOUCHES,
00042 RAMPART_ST_CONFIR_TYPE_HOLDER_OF_KEY
00043 } rampart_st_confir_type_t;
00044
00045 typedef struct rampart_saml_token_t rampart_saml_token_t;
00046
00055 AXIS2_EXTERN rampart_saml_token_t *AXIS2_CALL
00056 rampart_saml_token_create(const axutil_env_t *env, axiom_node_t *assertion,
00057 rampart_st_confir_type_t type);
00065 AXIS2_EXTERN int AXIS2_CALL
00066 rampart_saml_token_free(rampart_saml_token_t *tok, const axutil_env_t *env);
00075 AXIS2_EXTERN int AXIS2_CALL
00076 rampart_saml_token_set_assertion(rampart_saml_token_t *tok, const axutil_env_t *env,
00077 axiom_node_t *assertion);
00085 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00086 rampart_saml_token_get_assertion(rampart_saml_token_t *tok, const axutil_env_t *env);
00095 AXIS2_EXTERN int AXIS2_CALL
00096 rampart_saml_token_set_type(rampart_saml_token_t *tok, const axutil_env_t *env,
00097 rampart_st_confir_type_t type);
00105 AXIS2_EXTERN rampart_st_confir_type_t AXIS2_CALL
00106 rampart_saml_token_get_type(rampart_saml_token_t *tok, const axutil_env_t *env);
00115 AXIS2_EXTERN int AXIS2_CALL
00116 rampart_saml_token_set_key_value(rampart_saml_token_t *tok, const axutil_env_t *env,
00117 oxs_key_t *key);
00125 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00126 rampart_saml_token_get_str(rampart_saml_token_t *tok, const axutil_env_t *env);
00135 AXIS2_EXTERN int AXIS2_CALL
00136 rampart_saml_token_set_str(rampart_saml_token_t *tok, const axutil_env_t *env,
00137 axiom_node_t *str);
00147 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00148 rampart_saml_token_set_is_added_to_header(rampart_saml_token_t *tok,
00149 const axutil_env_t *env,
00150 axis2_bool_t is_token_added);
00158 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00159 rampart_saml_token_is_added_to_header(rampart_saml_token_t *tok,
00160 const axutil_env_t *env);
00170 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00171 rampart_saml_token_set_token_type(rampart_saml_token_t *tok,
00172 const axutil_env_t *env,
00173 rp_property_type_t token_type);
00181 AXIS2_EXTERN rp_property_type_t AXIS2_CALL
00182 rampart_saml_token_get_token_type(rampart_saml_token_t *tok,
00183 const axutil_env_t *env);
00184 #ifdef __cplusplus
00185 }
00186 #endif
00187
00188
00189 #endif
00190
00191