00001
00002
00003
00004
00005
00006
00007
00008
00020 #include <stdsoap2.h>
00021
00022 #ifdef __cplusplus
00023 extern "C" {
00024 #endif
00025
00026
00032 #define CGSI_OPT_CLIENT 0x1
00033
00034 #define CGSI_OPT_SERVER 0x2
00035
00036 #define CGSI_OPT_DELEG_FLAG 0x4
00037
00038 #define CGSI_OPT_SSL_COMPATIBLE 0x8
00039
00040 #define CGSI_OPT_DISABLE_NAME_CHECK 0x10
00041
00042 #define CGSI_OPT_KEEP_ALIVE 0x20
00043
00044 #define CGSI_OPT_DISABLE_MAPPING 0x40
00045
00047 #define CGSI_OPT_DISABLE_VOMS_CHECK 0x80
00048
00050 #define CGSI_OPT_ALLOW_ONLY_SELF 0x100
00051
00064 int soap_cgsi_init(struct soap *soap, int cgsi_options);
00065
00075 int cgsi_plugin(struct soap *soap, struct soap_plugin *plugin, void *arg);
00076
00086 int client_cgsi_plugin(struct soap *soap, struct soap_plugin *plugin, void *arg);
00087
00097 int server_cgsi_plugin(struct soap *soap, struct soap_plugin *plugin, void *arg);
00098
00106 int is_context_established(struct soap *soap);
00107
00117 int get_client_dn(struct soap *soap, char *dn, size_t dnlen);
00118
00128 int get_client_username(struct soap *soap, char *username, size_t dnlen);
00129
00142 int get_delegated_credentials(struct soap *soap, void **buffer, size_t *length);
00143
00152 int export_delegated_credentials(struct soap *soap, char *filename);
00153
00161 int has_delegated_credentials(struct soap *soap);
00162
00171 int set_default_proxy_file(struct soap *soap, char *filename);
00172
00179 void clear_default_proxy_file(int unlink_file);
00180
00190 int retrieve_voms_credentials(struct soap *soap);
00191
00200 char *get_client_voname(struct soap *soap);
00201
00210 char ** get_client_roles(struct soap *soap, int* nbfqans);
00211
00212
00213 #ifdef __cplusplus
00214 }
00215 #endif