Grid Community Toolkit  6.2.1705709074 (tag: v6.2.20240202)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
vomsclient.h
1 
2 #ifndef __VOMSCLIENT_H_
3 #define __VOMSCLIENT_H_
4 
5 #include <voms_apic.h>
6 #include <newformat.h>
7 
8 
9 #define DEFAULT_VOMS_DIR "/etc/grid-security/vomsdir"
10 #define DEFAULT_CACERT_DIR "/etc/grid-security/certificates"
11 
12 
13 typedef struct voms_command_s
14 {
15  char *vo; /* VO name */
16  char *command; /* Command to send VOMS Server */
17  /* example "G/voname[,Rrole-name[,...]]" */
18  struct voms_command_s *next;
19 } voms_command_t;
20 
21 
22 void get_voms_proxy(myproxy_socket_attrs_t *attrs,
23  myproxy_creds_t *creds,
24  myproxy_request_t *request,
25  myproxy_response_t *response,
26  myproxy_server_context_t *config);
27 
28 /*
29  * voms_init_delegation()
30  *
31  * Delegates a voms proxy based on the credentials found in file
32  * location delegfile good for lifetime_seconds
33  *
34  * returns 0 on success, -1 on error
35  */
36 int voms_init_delegation(myproxy_socket_attrs_t *attrs,
37  const char *delegfile,
38  const int lifetime_seconds,
39  char *passphrase,
40  char *voname, char *vomses, char *voms_userconf);
41 
42 int voms_contact(SSL_CREDENTIALS *creds, int lifetime,
43  char *voname, char *vomses, char *voms_userconf,
44  unsigned char **aclist, int *aclist_length);
45 
46 #endif
47