# rp_security_context_token.h

    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 RP_SECURITY_CONTEXT_TOKEN_H
    00020 #define RP_SECURITY_CONTEXT_TOKEN_H
    00021
    00027 #include <rp_includes.h>
    00028 #include <neethi_policy.h>
    00029 #include <rp_token.h>
    00030
    00031 #ifdef __cplusplus
    00032 extern "C"
    00033 {
    00034 #endif
    00035
    00036     typedef struct rp_security_context_token_t rp_security_context_token_t;
    00037
    00038     AXIS2_EXTERN rp_security_context_token_t *AXIS2_CALL
    00039     rp_security_context_token_create(
    00040         const axutil_env_t * env);
    00041
    00042     AXIS2_EXTERN void AXIS2_CALL
    00043     rp_security_context_token_free(
    00044         rp_security_context_token_t * security_context_token,
    00045         const axutil_env_t * env);
    00046
    00047     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00048     rp_security_context_token_get_inclusion(
    00049         rp_security_context_token_t * security_context_token,
    00050         const axutil_env_t * env);
    00051
    00052     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00053     rp_security_context_token_set_inclusion(
    00054         rp_security_context_token_t * security_context_token,
    00055         const axutil_env_t * env,
    00056         axis2_char_t * inclusion);
    00057
    00058     AXIS2_EXTERN derive_key_type_t AXIS2_CALL
    00059     rp_security_context_token_get_derivedkey(
    00060         rp_security_context_token_t * security_context_token,
    00061         const axutil_env_t * env);
    00062
    00063     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00064     rp_security_context_token_set_derivedkey(
    00065         rp_security_context_token_t * security_context_token,
    00066         const axutil_env_t * env,
    00067         derive_key_type_t derivedkey);
    00068
    00069     AXIS2_EXTERN derive_key_version_t AXIS2_CALL
    00070     rp_security_context_token_get_derivedkey_version(
    00071         rp_security_context_token_t *security_context_token,
    00072         const axutil_env_t *env);
    00073
    00074     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00075     rp_security_context_token_set_derivedkey_version(
    00076         rp_security_context_token_t *security_context_token,
    00077         const axutil_env_t *env,
    00078         derive_key_version_t version);
    00079
    00080     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00081     rp_security_context_token_get_require_external_uri_ref(
    00082         rp_security_context_token_t * security_context_token,
    00083         const axutil_env_t * env);
    00084
    00085     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00086     rp_security_context_token_set_require_external_uri_ref(
    00087         rp_security_context_token_t * security_context_token,
    00088         const axutil_env_t * env,
    00089         axis2_bool_t require_external_uri_ref);
    00090
    00091     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00092     rp_security_context_token_get_sc10_security_context_token(
    00093         rp_security_context_token_t * security_context_token,
    00094         const axutil_env_t * env);
    00095
    00096     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00097     rp_security_context_token_set_sc10_security_context_token(
    00098         rp_security_context_token_t * security_context_token,
    00099         const axutil_env_t * env,
    00100         axis2_bool_t sc10_security_context_token);
    00101
    00102     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00103     rp_security_context_token_get_issuer(
    00104          rp_security_context_token_t *security_context_token,
    00105          const axutil_env_t *env);
    00106
    00107     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00108     rp_security_context_token_set_issuer(
    00109         rp_security_context_token_t * security_context_token,
    00110         const axutil_env_t * env,
    00111         axis2_char_t *issuer);
    00112
    00113     AXIS2_EXTERN neethi_policy_t *AXIS2_CALL
    00114     rp_security_context_token_get_bootstrap_policy(
    00115          rp_security_context_token_t *security_context_token,
    00116          const axutil_env_t *env);
    00117
    00118     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00119     rp_security_context_token_set_bootstrap_policy(
    00120         rp_security_context_token_t * security_context_token,
    00121         const axutil_env_t * env,
    00122         neethi_policy_t *bootstrap_policy);
    00123
    00124     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00125     rp_security_context_token_get_is_secure_conversation_token(
    00126          rp_security_context_token_t *security_context_token,
    00127          const axutil_env_t *env);
    00128
    00129     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00130     rp_security_context_token_set_is_secure_conversation_token(
    00131         rp_security_context_token_t * security_context_token,
    00132         const axutil_env_t * env,
    00133         axis2_bool_t is_secure_conversation_token);
    00134
    00135     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00136     rp_security_context_token_increment_ref(
    00137         rp_security_context_token_t * security_context_token,
    00138         const axutil_env_t * env);
    00139
    00140 #ifdef __cplusplus
    00141 }
    00142 #endif
    00143 #endif