# rp_secpolicy.h

    00001
    00002 /*
    00003  * Copyright 2004,2005 The Apache Software Foundation.
    00004  *
    00005  * Licensed under the Apache License, Version 2.0 (the "License");
    00006  * you may not use this file except in compliance with the License.
    00007  * 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 #ifndef RP_SECPOLICY_H
    00019 #define RP_SECPOLICY_H
    00020
    00026 #include <rp_includes.h>
    00027 #include <rp_property.h>
    00028 #include <rp_asymmetric_binding.h>
    00029 #include <rp_symmetric_binding.h>
    00030 #include <rp_transport_binding.h>
    00031 #include <rp_signed_encrypted_parts.h>
    00032 #include <rp_signed_encrypted_elements.h>
    00033 #include <rp_signed_encrypted_items.h>
    00034 #include <rp_supporting_tokens.h>
    00035 #include <rp_rampart_config.h>
    00036 #include <rp_wss10.h>
    00037 #include <rp_wss11.h>
    00038 #include <rp_trust10.h>
    00039
    00040 #ifdef __cplusplus
    00041 extern "C"
    00042 {
    00043 #endif
    00044
    00045     typedef struct rp_secpolicy_t rp_secpolicy_t;
    00046
    00047     AXIS2_EXTERN rp_secpolicy_t *AXIS2_CALL
    00048     rp_secpolicy_create(
    00049         const axutil_env_t * env);
    00050
    00051     AXIS2_EXTERN void AXIS2_CALL
    00052     rp_secpolicy_free(
    00053         rp_secpolicy_t * secpolicy,
    00054         const axutil_env_t * env);
    00055
    00056     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00057     rp_secpolicy_set_binding(
    00058         rp_secpolicy_t * secpolicy,
    00059         const axutil_env_t * env,
    00060         rp_property_t * binding);
    00061
    00062     AXIS2_EXTERN rp_property_t *AXIS2_CALL
    00063     rp_secpolicy_get_binding(
    00064         rp_secpolicy_t * secpolicy,
    00065         const axutil_env_t * env);
    00066
    00067     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00068     rp_secpolicy_set_supporting_tokens(
    00069         rp_secpolicy_t * secpolicy,
    00070         const axutil_env_t * env,
    00071         rp_supporting_tokens_t * supporting_tokens);
    00072
    00073     AXIS2_EXTERN rp_supporting_tokens_t *AXIS2_CALL
    00074     rp_secpolicy_get_supporting_tokens(
    00075         rp_secpolicy_t * secpolicy,
    00076         const axutil_env_t * env);
    00077
    00078     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00079     rp_secpolicy_set_signed_supporting_tokens(
    00080         rp_secpolicy_t * secpolicy,
    00081         const axutil_env_t * env,
    00082         rp_supporting_tokens_t * signed_supporting_tokens);
    00083
    00084     AXIS2_EXTERN rp_supporting_tokens_t *AXIS2_CALL
    00085     rp_secpolicy_get_signed_supporting_tokens(
    00086         rp_secpolicy_t * secpolicy,
    00087         const axutil_env_t * env);
    00088
    00089     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00090     rp_secpolicy_set_endorsing_supporting_tokens(
    00091         rp_secpolicy_t * secpolicy,
    00092         const axutil_env_t * env,
    00093         rp_supporting_tokens_t * endorsing_supporting_tokens);
    00094
    00095     AXIS2_EXTERN rp_supporting_tokens_t *AXIS2_CALL
    00096     rp_secpolicy_get_endorsing_supporting_tokens(
    00097         rp_secpolicy_t * secpolicy,
    00098         const axutil_env_t * env);
    00099
    00100     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00101     rp_secpolicy_set_signed_endorsing_supporting_tokens(
    00102         rp_secpolicy_t * secpolicy,
    00103         const axutil_env_t * env,
    00104         rp_supporting_tokens_t * signed_endorsing_supporting_tokens);
    00105
    00106     AXIS2_EXTERN rp_supporting_tokens_t *AXIS2_CALL
    00107     rp_secpolicy_get_signed_endorsing_supporting_tokens(
    00108         rp_secpolicy_t * secpolicy,
    00109         const axutil_env_t * env);
    00110
    00111     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00112     rp_secpolicy_set_signed_parts(
    00113         rp_secpolicy_t * secpolicy,
    00114         const axutil_env_t * env,
    00115         rp_signed_encrypted_parts_t * signed_parts);
    00116
    00117     AXIS2_EXTERN rp_signed_encrypted_parts_t *AXIS2_CALL
    00118     rp_secpolicy_get_signed_parts(
    00119         rp_secpolicy_t * secpolicy,
    00120         const axutil_env_t * env);
    00121
    00122     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00123     rp_secpolicy_set_encrypted_parts(
    00124         rp_secpolicy_t * secpolicy,
    00125         const axutil_env_t * env,
    00126         rp_signed_encrypted_parts_t * encrypted_parts);
    00127
    00128     AXIS2_EXTERN rp_signed_encrypted_parts_t *AXIS2_CALL
    00129     rp_secpolicy_get_encrypted_parts(
    00130         rp_secpolicy_t * secpolicy,
    00131         const axutil_env_t * env);
    00132
    00133     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00134     rp_secpolicy_set_signed_elements(
    00135         rp_secpolicy_t * secpolicy,
    00136         const axutil_env_t * env,
    00137         rp_signed_encrypted_elements_t * signed_elements);
    00138
    00139     AXIS2_EXTERN rp_signed_encrypted_elements_t *AXIS2_CALL
    00140     rp_secpolicy_get_signed_elements(
    00141         rp_secpolicy_t * secpolicy,
    00142         const axutil_env_t * env);
    00143
    00144     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00145     rp_secpolicy_set_encrypted_elements(
    00146         rp_secpolicy_t * secpolicy,
    00147         const axutil_env_t * env,
    00148         rp_signed_encrypted_elements_t * encrypted_elements);
    00149
    00150     AXIS2_EXTERN rp_signed_encrypted_elements_t *AXIS2_CALL
    00151     rp_secpolicy_get_encrypted_elements(
    00152         rp_secpolicy_t * secpolicy,
    00153         const axutil_env_t * env);
    00154
    00155     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00156     rp_secpolicy_set_signed_items(
    00157         rp_secpolicy_t * secpolicy,
    00158         const axutil_env_t * env,
    00159         rp_signed_encrypted_items_t * signed_items);
    00160
    00161     AXIS2_EXTERN rp_signed_encrypted_items_t *AXIS2_CALL
    00162     rp_secpolicy_get_signed_items(
    00163         rp_secpolicy_t * secpolicy,
    00164         const axutil_env_t * env);
    00165
    00166     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00167     rp_secpolicy_set_encrypted_items(
    00168         rp_secpolicy_t * secpolicy,
    00169         const axutil_env_t * env,
    00170         rp_signed_encrypted_items_t * encrypted_items);
    00171
    00172     AXIS2_EXTERN rp_signed_encrypted_items_t *AXIS2_CALL
    00173     rp_secpolicy_get_encrypted_items(
    00174         rp_secpolicy_t * secpolicy,
    00175         const axutil_env_t * env);
    00176
    00177     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00178     rp_secpolicy_set_wss(
    00179         rp_secpolicy_t * secpolicy,
    00180         const axutil_env_t * env,
    00181         rp_property_t * wss);
    00182
    00183     AXIS2_EXTERN rp_property_t *AXIS2_CALL
    00184     rp_secpolicy_get_wss(
    00185         rp_secpolicy_t * secpolicy,
    00186         const axutil_env_t * env);
    00187
    00188     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00189     rp_secpolicy_set_rampart_config(
    00190         rp_secpolicy_t * secpolicy,
    00191         const axutil_env_t * env,
    00192         rp_rampart_config_t * rampart_config);
    00193
    00194     AXIS2_EXTERN rp_rampart_config_t *AXIS2_CALL
    00195     rp_secpolicy_get_rampart_config(
    00196         rp_secpolicy_t * secpolicy,
    00197         const axutil_env_t * env);
    00198
    00199     AXIS2_EXTERN axis2_status_t AXIS2_CALL
    00200     rp_secpolicy_set_trust10(
    00201         rp_secpolicy_t * secpolicy,
    00202         const axutil_env_t * env,
    00203         rp_trust10_t * trust10);
    00204
    00205     AXIS2_EXTERN rp_trust10_t *AXIS2_CALL
    00206     rp_secpolicy_get_trust10(
    00207         rp_secpolicy_t * secpolicy,
    00208         const axutil_env_t * env);
    00209
    00210 #ifdef __cplusplus
    00211 }
    00212 #endif
    00213 #endif