00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef RP_GENERIC_TOKEN_H
00020 #define RP_GENERIC_TOKEN_H
00021
00027 #include <rp_includes.h>
00028
00029 #ifdef __cplusplus
00030 extern "C"
00031 {
00032 #endif
00033
00034 typedef enum
00035 {
00036 DERIVEKEY_NONE =0,
00037 DERIVEKEY_NEEDED,
00038 DERIVEKEY_IMPLIED,
00039 DERIVEKEY_EXPLICIT
00040 } derive_key_type_t;
00041
00042 typedef enum
00043 {
00044 DERIVEKEY_VERSION_SC10 =0,
00045 DERIVEKEY_VERSION_SC13
00046 } derive_key_version_t;
00047
00048 typedef struct rp_token_t rp_token_t;
00049
00050 AXIS2_EXTERN rp_token_t *AXIS2_CALL
00051 rp_token_create(
00052 const axutil_env_t * env);
00053
00054 AXIS2_EXTERN void AXIS2_CALL
00055 rp_token_free(
00056 rp_token_t * token,
00057 const axutil_env_t * env);
00058
00059 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00060 rp_token_get_issuer(
00061 rp_token_t * token,
00062 const axutil_env_t * env);
00063
00064 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00065 rp_token_set_issuer(
00066 rp_token_t * token,
00067 const axutil_env_t * env,
00068 axis2_char_t * issuer);
00069
00070 AXIS2_EXTERN derive_key_type_t AXIS2_CALL
00071 rp_token_get_derivedkey_type(
00072 rp_token_t * token,
00073 const axutil_env_t * env);
00074
00075 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00076 rp_token_set_derivedkey_type(
00077 rp_token_t * token,
00078 const axutil_env_t * env,
00079 derive_key_type_t derivedkey);
00080
00081 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00082 rp_token_get_is_issuer_name(
00083 rp_token_t * token,
00084 const axutil_env_t * env);
00085
00086 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00087 rp_token_set_is_issuer_name(
00088 rp_token_t * token,
00089 const axutil_env_t * env,
00090 axis2_bool_t is_issuer_name);
00091
00092 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00093 rp_token_get_claim(
00094 rp_token_t * token,
00095 const axutil_env_t * env);
00096
00097 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00098 rp_token_set_claim(
00099 rp_token_t * token,
00100 const axutil_env_t * env,
00101 axiom_node_t *claim);
00102
00103 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00104 rp_token_increment_ref(
00105 rp_token_t * token,
00106 const axutil_env_t * env);
00107
00108 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00109 rp_token_set_derive_key_version(
00110 rp_token_t *token,
00111 const axutil_env_t *env,
00112 derive_key_version_t version);
00113
00114 AXIS2_EXTERN derive_key_version_t AXIS2_CALL
00115 rp_token_get_derive_key_version(
00116 rp_token_t *token,
00117 const axutil_env_t *env);
00118
00119 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00120 rp_token_set_inclusion(
00121 rp_token_t *token,
00122 const axutil_env_t *env,
00123 axis2_char_t *inclusion);
00124
00125 AXIS2_EXTERN axis2_char_t *AXIS2_CALL
00126 rp_token_get_inclusion(
00127 rp_token_t *token,
00128 const axutil_env_t *env);
00129
00130
00131 #ifdef __cplusplus
00132 }
00133 #endif
00134 #endif