rampart_saml_token.h
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 enum
00046 {
00047 RAMPART_ST_TYPE_UNSPECIFIED = 0,
00048 RAMPART_ST_TYPE_SIGNED_SUPPORTING_TOKEN,
00049 RAMPART_ST_TYPE_SIGNATURE_TOKEN,
00050 RAMPART_ST_TYPE_ENCRYPTION_TOKEN,
00051 RAMPART_ST_TYPE_PROTECTION_TOKEN
00052 } rampart_st_type_t;
00053
00054 typedef struct rampart_saml_token_t rampart_saml_token_t;
00055
00064 AXIS2_EXTERN rampart_saml_token_t *AXIS2_CALL
00065 rampart_saml_token_create(const axutil_env_t *env, axiom_node_t *assertion,
00066 rampart_st_confir_type_t type);
00074 AXIS2_EXTERN int AXIS2_CALL
00075 rampart_saml_token_free(rampart_saml_token_t *tok, const axutil_env_t *env);
00084 AXIS2_EXTERN int AXIS2_CALL
00085 rampart_saml_token_set_assertion(rampart_saml_token_t *tok, const axutil_env_t *env,
00086 axiom_node_t *assertion);
00094 AXIS2_EXTERN axiom_node_t* AXIS2_CALL
00095 rampart_saml_token_get_assertion(rampart_saml_token_t *tok, const axutil_env_t *env);
00104 AXIS2_EXTERN int AXIS2_CALL
00105 rampart_saml_token_set_type(rampart_saml_token_t *tok, const axutil_env_t *env,
00106 rampart_st_confir_type_t type);
00114 AXIS2_EXTERN rampart_st_confir_type_t AXIS2_CALL
00115 rampart_saml_token_get_type(rampart_saml_token_t *tok, const axutil_env_t *env);
00124 AXIS2_EXTERN int AXIS2_CALL
00125 rampart_saml_token_set_key_value(rampart_saml_token_t *tok, const axutil_env_t *env,
00126 oxs_key_t *key);
00134 AXIS2_EXTERN axiom_node_t * AXIS2_CALL
00135 rampart_saml_token_get_str(rampart_saml_token_t *tok, const axutil_env_t *env);
00144 AXIS2_EXTERN int AXIS2_CALL
00145 rampart_saml_token_set_str(rampart_saml_token_t *tok, const axutil_env_t *env,
00146 axiom_node_t *str);
00156 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00157 rampart_saml_token_set_is_added_to_header(rampart_saml_token_t *tok,
00158 const axutil_env_t *env,
00159 axis2_bool_t is_token_added);
00167 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00168 rampart_saml_token_is_added_to_header(rampart_saml_token_t *tok,
00169 const axutil_env_t *env);
00179 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00180 rampart_saml_token_set_token_type(rampart_saml_token_t *tok,
00181 const axutil_env_t *env,
00182 rampart_st_type_t token_type);
00190 AXIS2_EXTERN rampart_st_type_t AXIS2_CALL
00191 rampart_saml_token_get_token_type(rampart_saml_token_t *tok,
00192 const axutil_env_t *env);
00193
00194 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00195 rampart_saml_token_set_session_key(rampart_saml_token_t *tok,
00196 const axutil_env_t *env,
00197 oxs_key_t *key);
00198
00199
00200 AXIS2_EXTERN oxs_key_t * AXIS2_CALL
00201 rampart_saml_token_get_session_key(rampart_saml_token_t *tok,
00202 const axutil_env_t *env);
00203 #ifdef __cplusplus
00204 }
00205 #endif
00206
00207
00208 #endif
00209
00210