# rp_username_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_USERNAME_TOKEN_H
    00020 #define RP_USERNAME_TOKEN_H
    00021
    00027 #include <rp_includes.h>
    00028 #include <rp_token.h>
    00029
    00030 #ifdef __cplusplus
    00031 extern "C"
    00032 {
    00033 #endif
    00034
    00035     typedef enum
    00036     {
    00037         PASSWORD_PLAIN = 0,
    00038         PASSWORD_HASH,
    00039         PASSWORD_NONE /* no password will be provided in the user name token */
    00040     } password_type_t;
    00041
    00042     typedef struct rp_username_token_t rp_username_token_t;
    00043
    00044     AXIS2_EXTERN rp_username_token_t *AXIS2_CALL
    00045     rp_username_token_create(
    00046         const axutil_env_t * env);
    00047
    00048     AXIS2_EXTERN void AXIS2_CALL
    00049     rp_username_token_free(
    00050         rp_username_token_t * username_token,
    00051         const axutil_env_t * env);
    00052
    00053     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00054     rp_username_token_get_inclusion(
    00055         rp_username_token_t * username_token,
    00056         const axutil_env_t * env);
    00057
    00058     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00059     rp_username_token_set_inclusion(
    00060         rp_username_token_t * username_token,
    00061         const axutil_env_t * env,
    00062         axis2_char_t * inclusion);
    00063
    00064     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00065     rp_username_token_get_useUTprofile10(
    00066         rp_username_token_t * username_token,
    00067         const axutil_env_t * env);
    00068
    00069     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00070     rp_username_token_set_useUTprofile10(
    00071         rp_username_token_t * username_token,
    00072         const axutil_env_t * env,
    00073         axis2_bool_t useUTprofile10);
    00074
    00075     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00076     rp_username_token_get_useUTprofile11(
    00077         rp_username_token_t * username_token,
    00078         const axutil_env_t * env);
    00079
    00080     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00081     rp_username_token_set_useUTprofile11(
    00082         rp_username_token_t * username_token,
    00083         const axutil_env_t * env,
    00084         axis2_bool_t useUTprofile11);
    00085
    00086     AXIS2_EXTERN axis2_char_t *AXIS2_CALL
    00087     rp_username_token_get_issuer(
    00088         rp_username_token_t * username_token,
    00089         const axutil_env_t * env);
    00090
    00091     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00092     rp_username_token_set_issuer(
    00093         rp_username_token_t * username_token,
    00094         const axutil_env_t * env,
    00095         axis2_char_t * issuer);
    00096
    00097     AXIS2_EXTERN derive_key_type_t AXIS2_CALL
    00098     rp_username_token_get_derivedkey_type(
    00099         rp_username_token_t * username_token,
    00100         const axutil_env_t * env);
    00101
    00102     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00103     rp_username_token_set_derivedkey_type(
    00104         rp_username_token_t * username_token,
    00105         const axutil_env_t * env,
    00106         derive_key_type_t derivedkey);
    00107
    00108     AXIS2_EXTERN axis2_bool_t AXIS2_CALL
    00109     rp_username_token_get_is_issuer_name(
    00110         rp_username_token_t * username_token,
    00111         const axutil_env_t * env);
    00112
    00113     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00114     rp_username_token_set_is_issuer_name(
    00115         rp_username_token_t * username_token,
    00116         const axutil_env_t * env,
    00117         axis2_bool_t is_issuer_name);
    00118
    00119     AXIS2_EXTERN axiom_node_t *AXIS2_CALL
    00120     rp_username_token_get_claim(
    00121         rp_username_token_t * username_token,
    00122         const axutil_env_t * env);
    00123
    00124     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00125     rp_username_token_set_claim(
    00126         rp_username_token_t * username_token,
    00127         const axutil_env_t * env,
    00128         axiom_node_t *claim);
    00129
    00130     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00131     rp_username_token_increment_ref(
    00132         rp_username_token_t * username_token,
    00133         const axutil_env_t * env);
    00134
    00135 #ifdef __cplusplus
    00136 }
    00137 #endif
    00138 #endif