# secconv_security_context_token.h

Go to the documentation of this file.

    00001
    00002 /*
    00003  * Licensed to the Apache Software Foundation (ASF) under one or more
    00004  * contributor license agreements.  See the NOTICE file distributed with
    00005  * this work for additional information regarding copyright ownership.
    00006  * The ASF licenses this file to You under the Apache License, Version 2.0
    00007  * (the "License"); you may not use this file except in compliance with
    00008  * the License.  You may obtain a copy of the License at
    00009  *
    00010  *      http://www.apache.org/licenses/LICENSE-2.0
    00011  *
    00012  * Unless required by applicable law or agreed to in writing, software
    00013  * distributed under the License is distributed on an "AS IS" BASIS,
    00014  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00015  * See the License for the specific language governing permissions and
    00016  * limitations under the License.
    00017  */
    00018
    00019 #ifndef SECCONV_SECURITY_CONTEXT_TOKEN_H
    00020 #define SECCONV_SECURITY_CONTEXT_TOKEN_H
    00021
    00027 #include <stdio.h>
    00028 #include <stdlib.h>
    00029 #include <axutil_utils.h>
    00030 #include <axutil_string.h>
    00031 #include <oxs_buffer.h>
    00032
    00033 #ifdef __cplusplus
    00034 extern "C"
    00035 {
    00036 #endif
    00037
    00038     typedef struct security_context_token_t security_context_token_t;
    00039
    00045     AXIS2_EXTERN security_context_token_t *AXIS2_CALL
    00046     security_context_token_create(
    00047         const axutil_env_t * env);
    00048
    00055     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00056     security_context_token_free(
    00057         security_context_token_t *sct,
    00058         const axutil_env_t *env);
    00059
    00066     AXIS2_EXTERN oxs_buffer_t *AXIS2_CALL
    00067     security_context_token_get_secret(
    00068         security_context_token_t * sct,
    00069         const axutil_env_t * env);
    00070
    00078     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00079     security_context_token_get_global_identifier(
    00080         security_context_token_t * sct,
    00081         const axutil_env_t * env);
    00082
    00090     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00091     security_context_token_get_local_identifier(
    00092         security_context_token_t * sct,
    00093         const axutil_env_t * env);
    00094
    00103     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00104     security_context_token_set_secret(
    00105         security_context_token_t * sct,
    00106         const axutil_env_t * env,
    00107         oxs_buffer_t *buffer);
    00108
    00117     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00118     security_context_token_set_global_identifier(
    00119         security_context_token_t * sct,
    00120         const axutil_env_t * env,
    00121         axis2_char_t *global_id);
    00122
    00131     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00132     security_context_token_set_local_identifier(
    00133         security_context_token_t * sct,
    00134         const axutil_env_t * env,
    00135         axis2_char_t *local_id);
    00136
    00144     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00145     security_context_token_set_is_sc10(
    00146         security_context_token_t *sct,
    00147         const axutil_env_t * env,
    00148         axis2_bool_t is_sc10);
    00149
    00157     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
    00158     security_context_token_get_requested_proof_token(
    00159         security_context_token_t *sct,
    00160         const axutil_env_t * env);
    00161
    00169     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
    00170     security_context_token_get_attached_reference(
    00171         security_context_token_t *sct,
    00172         const axutil_env_t * env);
    00173
    00181     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
    00182     security_context_token_get_unattached_reference(
    00183         security_context_token_t *sct,
    00184         const axutil_env_t * env);
    00185
    00193     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
    00194     security_context_token_get_token(
    00195         security_context_token_t *sct,
    00196         const axutil_env_t * env);
    00197
    00206     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00207     security_context_token_set_requested_proof_token(
    00208         security_context_token_t *sct,
    00209         const axutil_env_t * env,
    00210         axiom_node_t *node);
    00211
    00219     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00220     security_context_token_set_attached_reference(
    00221         security_context_token_t *sct,
    00222         const axutil_env_t * env,
    00223         axiom_node_t *node);
    00224
    00232     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00233     security_context_token_set_unattached_reference(
    00234         security_context_token_t *sct,
    00235         const axutil_env_t * env,
    00236         axiom_node_t *node);
    00237
    00245     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00246     security_context_token_set_token(
    00247         security_context_token_t *sct,
    00248         const axutil_env_t * env,
    00249         axiom_node_t *node);
    00250
    00257     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00258     security_context_token_increment_ref(
    00259         security_context_token_t *sct,
    00260         const axutil_env_t * env);
    00261
    00268     AXIS2_EXTERN axis2_char_t * AXIS2_CALL
    00269     security_context_token_serialize(
    00270         security_context_token_t *sct,
    00271         const axutil_env_t *env);
    00272
    00280     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00281     security_context_token_deserialize(
    00282         security_context_token_t *sct,
    00283         const axutil_env_t *env,
    00284         axis2_char_t *serialised_node);
    00285
    00286 #ifdef __cplusplus
    00287 }
    00288 #endif
    00289 #endif                          /*SECCONV_SECURITY_CONTEXT_TOKEN_H */