# rampart_util.h

Go to the documentation of this file.

    00001 /*
    00002  * Licensed to the Apache Software Foundation (ASF) under one or more
    00003  * contributor license agreements.  See the NOTICE file distributed with
    00004  * this work for additional information regarding copyright ownership.
    00005  * The ASF licenses this file to You under the Apache License, Version 2.0
    00006  * (the "License"); you may not use this file except in compliance with
    00007  * the License.  You may obtain a copy of the License at
    00008  *
    00009  *      http://www.apache.org/licenses/LICENSE-2.0
    00010  *
    00011  * Unless required by applicable law or agreed to in writing, software
    00012  * distributed under the License is distributed on an "AS IS" BASIS,
    00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00014  * See the License for the specific language governing permissions and
    00015  * limitations under the License.
    00016  */
    00017
    00018 #include <axutil_utils_defines.h>
    00019 #include <axis2_defines.h>
    00020 #include <axutil_date_time.h>
    00021 #include <axutil_env.h>
    00022 #include <axis2_msg_ctx.h>
    00023 #include <rampart_authn_provider.h>
    00024 #include <rampart_credentials.h>
    00025 #include <rampart_callback.h>
    00026 #include <rampart_replay_detector.h>
    00027 #include <rampart_sct_provider.h>
    00028
    00040 #ifndef RAMPART_UTIL_H
    00041 #define RAMPART_UTIL_H
    00042
    00043 #ifdef __cplusplus
    00044 extern "C" {
    00045 #endif
    00046
    00054     AXIS2_EXTERN rampart_credentials_t* AXIS2_CALL
    00055     rampart_load_credentials_module(
    00056         const axutil_env_t *env,
    00057         axis2_char_t *cred_module_name);
    00058
    00069     AXIS2_EXTERN rampart_credentials_status_t AXIS2_CALL
    00070     rampart_call_credentials(
    00071         const axutil_env_t *env,
    00072         rampart_credentials_t *cred_module,
    00073         axis2_msg_ctx_t *ctx,
    00074         axis2_char_t **username,
    00075         axis2_char_t **password);
    00076
    00084     AXIS2_EXTERN rampart_authn_provider_t* AXIS2_CALL
    00085     rampart_load_auth_module(
    00086         const axutil_env_t *env,
    00087         axis2_char_t *auth_module_name);
    00088
    00096     AXIS2_EXTERN rampart_replay_detector_t* AXIS2_CALL
    00097     rampart_load_replay_detector(
    00098         const axutil_env_t *env,
    00099         axis2_char_t *replay_detector_name);
    00100
    00108     AXIS2_EXTERN rampart_sct_provider_t* AXIS2_CALL
    00109     rampart_load_sct_provider(
    00110         const axutil_env_t *env,
    00111         axis2_char_t *sct_provider_name);
    00112
    00120     AXIS2_EXTERN rampart_callback_t* AXIS2_CALL
    00121     rampart_load_pwcb_module(
    00122         const axutil_env_t *env,
    00123         axis2_char_t *callback_module_name);
    00124
    00125
    00138     AXIS2_EXTERN rampart_authn_provider_status_t AXIS2_CALL
    00139     rampart_authenticate_un_pw(
    00140         const axutil_env_t *env,
    00141         rampart_authn_provider_t *authp,
    00142         const axis2_char_t *username,
    00143         const axis2_char_t *password,
    00144         const axis2_char_t *nonce,
    00145         const axis2_char_t *created,
    00146         const axis2_char_t *password_type,
    00147         axis2_msg_ctx_t *msg_ctx);
    00148
    00149
    00157     AXIS2_EXTERN axis2_char_t* AXIS2_CALL
    00158     rampart_callback_password(
    00159         const axutil_env_t *env,
    00160         rampart_callback_t *callback_module,
    00161         const axis2_char_t *username);
    00162
    00170         AXIS2_EXTERN axis2_char_t * AXIS2_CALL
    00171         rampart_callback_pkcs12_password(
    00172             const axutil_env_t *env,
    00173             rampart_callback_t *callback_module,
    00174             const axis2_char_t *username);
    00175
    00183     AXIS2_EXTERN axis2_char_t* AXIS2_CALL
    00184     rampart_generate_time(
    00185         const axutil_env_t *env,
    00186         int ttl,
    00187         axis2_bool_t with_millisecond);
    00188
    00196     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00197     rampart_compare_date_time(
    00198         const axutil_env_t *env,
    00199         axis2_char_t *dt1,
    00200         axis2_char_t *dt2);
    00201
    00202     /* @} */
    00203 #ifdef __cplusplus
    00204 }
    00205 #endif
    00206
    00207 #endif    /* RAMPART_UTIL_H */
    00208
    00209