cgsi_plugin.h

Go to the documentation of this file.
00001 /*  
00002  * Copyright (c) Members of the EGEE Collaboration. 2004.
00003  * See http://public.eu-egee.org/partners/ for details on 
00004  * the copyright holders.
00005  * For license conditions see the license file or
00006  * http://eu-egee.org/license.html
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 
00138 int export_delegated_credentials(struct soap *soap, char *filename);
00139 
00147 int has_delegated_credentials(struct soap *soap);
00148 
00157 int set_default_proxy_file(struct soap *soap, char *filename);
00158 
00165 void clear_default_proxy_file(int unlink_file);
00166 
00176 int retrieve_voms_credentials(struct soap *soap);
00177 
00186 char *get_client_voname(struct soap *soap);
00187 
00196 char ** get_client_roles(struct soap *soap, int* nbfqans);
00197 
00198 
00199 #ifdef __cplusplus
00200 }
00201 #endif
Copyright © 2004-2006 EU-EGEE