6 #ifndef __MYPROXY_SERVER_H
7 #define __MYPROXY_SERVER_H
9 #define MYPROXY_SERVER_POLICY_TYPE_FQAN "FQAN:"
10 #define MYPROXY_SERVER_POLICY_TYPE_SUBJECT "SUBJECT:"
14 typedef struct myproxy_usage_s {
17 int cred_pphrase_used;
22 int credentials_exist;
28 typedef struct myproxy_server_context_s
35 char *passphrase_policy_pgm;
36 char **accepted_credential_dns;
37 char **authorized_retriever_dns;
38 char **default_retriever_dns;
39 char **trusted_retriever_dns;
40 char **default_trusted_retriever_dns;
41 char **authorized_renewer_dns;
42 char **default_renewer_dns;
43 char **authorized_key_retrievers_dns;
44 char **default_key_retrievers_dns;
45 int max_proxy_lifetime;
46 int max_cred_lifetime;
51 char *certificate_issuer_program;
52 char *certificate_issuer_cert;
53 char *certificate_issuer_key;
54 const void *certificate_hashalg;
55 char *certificate_request_checker;
56 char *certificate_issuer_checker;
57 char *certificate_openssl_engine_id;
58 char *certificate_openssl_engine_lockfile;
59 char **certificate_openssl_engine_pre;
60 char **certificate_openssl_engine_post;
61 char *certificate_issuer_key_passphrase;
62 char *certificate_issuer_subca_certfile;
63 char *certificate_issuer_email_domain;
64 char *certificate_extfile;
65 char *certificate_extapp;
66 char *certificate_mapfile;
67 char *certificate_mapapp;
68 int max_cert_lifetime;
70 char *certificate_serialfile;
71 int certificate_serial_skip;
72 char *certificate_out_dir;
74 char *ca_ldap_uid_attribute;
75 char *ca_ldap_searchbase;
76 char *ca_ldap_connect_dn;
77 char *ca_ldap_connect_passphrase;
78 char *ca_ldap_dn_attribute;
79 int ca_ldap_start_tls;
80 char *accepted_credentials_mapfile;
81 char *accepted_credentials_mapapp;
82 int check_multiple_credentials;
87 int request_size_limit;
93 myproxy_usage_t usage;
94 int allow_voms_attribute_requests;
96 } myproxy_server_context_t;
98 typedef struct myproxy_server_peer_t {
101 } myproxy_server_peer_t;
118 int myproxy_server_config_read(myproxy_server_context_t *context);
126 void myproxy_server_clear_context(myproxy_server_context_t *context);
136 int myproxy_server_check_policy_list(
const char **dn_list,
137 const char *client_name);
145 int myproxy_server_check_policy_list_ext(
const char **dn_list,
146 myproxy_server_peer_t *client);
156 int myproxy_server_check_policy(
const char *dn_regex,
165 int myproxy_server_check_policy_ext(
const char *dn_regex,
166 myproxy_server_peer_t *client);