rp_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_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

Generated on Fri Apr 17 11:49:43 2009 for Axis2/C by  doxygen 1.5.3