36
35
const axutil_env_t * env)
38
37
rp_x509_token_t *x509_token = NULL;
40
AXIS2_ENV_CHECK(env, NULL);
42
x509_token = (rp_x509_token_t *) AXIS2_MALLOC(env->allocator,
43
sizeof(rp_x509_token_t));
45
if (x509_token == NULL)
38
x509_token = (rp_x509_token_t *) AXIS2_MALLOC(env->allocator, sizeof(rp_x509_token_t));
42
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
43
"[neethi] X509 token assertion creation failed. Insufficient memory");
47
44
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
50
x509_token->inclusion = RP_INCLUDE_ALWAYS;
51
x509_token->derivedkeys = AXIS2_FALSE;
52
47
x509_token->require_key_identifier_reference = AXIS2_FALSE;
53
48
x509_token->require_issuer_serial_reference = AXIS2_FALSE;
54
49
x509_token->require_embedded_token_reference = AXIS2_FALSE;
55
50
x509_token->require_thumb_print_reference = AXIS2_FALSE;
56
51
x509_token->token_version_and_type = RP_WSS_X509_V3_TOKEN_10;
57
52
x509_token->ref = 0;
54
x509_token->token = rp_token_create(env);
55
if(!x509_token->token)
57
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[neethi] X509 token assertion creation failed.");
58
rp_x509_token_free(x509_token, env);
63
66
rp_x509_token_t * x509_token,
64
67
const axutil_env_t * env)
66
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
70
71
if (--(x509_token->ref) > 0)
76
rp_token_free(x509_token->token, env);
74
77
AXIS2_FREE(env->allocator, x509_token);
80
82
/* Implementations */
84
86
rp_x509_token_t * x509_token,
85
87
const axutil_env_t * env)
87
AXIS2_ENV_CHECK(env, NULL);
89
return x509_token->inclusion;
89
return rp_token_get_inclusion(x509_token->token, env);
92
92
AXIS2_EXTERN axis2_status_t AXIS2_CALL
95
95
const axutil_env_t * env,
96
96
axis2_char_t * inclusion)
98
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
99
AXIS2_PARAM_CHECK(env->error, inclusion, AXIS2_FAILURE);
101
x509_token->inclusion = inclusion;
103
return AXIS2_SUCCESS;
98
return rp_token_set_inclusion(x509_token->token, env, inclusion);
106
AXIS2_EXTERN axis2_bool_t AXIS2_CALL
107
rp_x509_token_get_derivedkeys(
101
AXIS2_EXTERN derive_key_type_t AXIS2_CALL
102
rp_x509_token_get_derivedkey(
108
103
rp_x509_token_t * x509_token,
109
104
const axutil_env_t * env)
111
AXIS2_ENV_CHECK(env, AXIS2_FALSE);
113
return x509_token->derivedkeys;
106
return rp_token_get_derivedkey_type(x509_token->token, env);
116
109
AXIS2_EXTERN axis2_status_t AXIS2_CALL
117
rp_x509_token_set_derivedkeys(
110
rp_x509_token_set_derivedkey(
118
111
rp_x509_token_t * x509_token,
119
112
const axutil_env_t * env,
120
axis2_bool_t derivedkeys)
122
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
123
AXIS2_PARAM_CHECK(env->error, derivedkeys, AXIS2_FALSE);
124
x509_token->derivedkeys = derivedkeys;
126
return AXIS2_SUCCESS;
113
derive_key_type_t derivedkeys)
115
return rp_token_set_derivedkey_type(x509_token->token, env, derivedkeys);
118
AXIS2_EXTERN derive_key_version_t AXIS2_CALL
119
rp_x509_token_get_derivedkey_version(
120
rp_x509_token_t *x509_token,
121
const axutil_env_t *env)
123
return rp_token_get_derive_key_version(x509_token->token, env);
126
AXIS2_EXTERN axis2_status_t AXIS2_CALL
127
rp_x509_token_set_derivedkey_version(
128
rp_x509_token_t *x509_token,
129
const axutil_env_t *env,
130
derive_key_version_t version)
132
return rp_token_set_derive_key_version(x509_token->token, env, version);
129
135
AXIS2_EXTERN axis2_bool_t AXIS2_CALL
142
146
const axutil_env_t * env,
143
147
axis2_bool_t require_key_identifier_reference)
145
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
146
AXIS2_PARAM_CHECK(env->error, require_key_identifier_reference,
148
x509_token->require_key_identifier_reference =
149
require_key_identifier_reference;
149
x509_token->require_key_identifier_reference = require_key_identifier_reference;
151
150
return AXIS2_SUCCESS;
155
153
AXIS2_EXTERN axis2_bool_t AXIS2_CALL
168
164
const axutil_env_t * env,
169
165
axis2_bool_t require_issuer_serial_reference)
171
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
172
AXIS2_PARAM_CHECK(env->error, require_issuer_serial_reference,
174
x509_token->require_issuer_serial_reference =
175
require_issuer_serial_reference;
167
x509_token->require_issuer_serial_reference = require_issuer_serial_reference;
177
168
return AXIS2_SUCCESS;
181
171
AXIS2_EXTERN axis2_bool_t AXIS2_CALL
194
182
const axutil_env_t * env,
195
183
axis2_bool_t require_embedded_token_reference)
197
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
198
AXIS2_PARAM_CHECK(env->error, require_embedded_token_reference,
200
x509_token->require_embedded_token_reference =
201
require_embedded_token_reference;
185
x509_token->require_embedded_token_reference = require_embedded_token_reference;
203
186
return AXIS2_SUCCESS;
219
200
const axutil_env_t * env,
220
201
axis2_bool_t require_thumb_print_reference)
222
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
223
AXIS2_PARAM_CHECK(env->error, require_thumb_print_reference, AXIS2_FAILURE);
224
203
x509_token->require_thumb_print_reference = require_thumb_print_reference;
226
204
return AXIS2_SUCCESS;
242
218
const axutil_env_t * env,
243
219
axis2_char_t * token_version_and_type)
245
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
246
AXIS2_PARAM_CHECK(env->error, token_version_and_type, AXIS2_FAILURE);
248
221
x509_token->token_version_and_type = token_version_and_type;
249
222
return AXIS2_SUCCESS;