50 #include <openssl/x509.h> 51 #include <openssl/bio.h> 52 #include <sys/types.h> 53 #include "newformat.h" 132 struct vomsr *translate();
133 friend int TranslateVOMS(
struct vomsdatar *vd, std::vector<voms>&v,
int *error);
139 std::vector<attributelist>& GetAttributes();
140 std::vector<std::string> GetTargets();
203 Initializer(Initializer &);
207 static Initializer init;
208 std::string ca_cert_dir;
209 std::string voms_cert_dir;
211 std::string ordering;
212 std::vector<contactdata> servers;
213 std::vector<std::string> targets;
219 std::string cert_dir =
"");
230 bool LoadSystemContacts(std::string dir =
"");
237 bool LoadUserContacts(std::string dir =
"");
247 std::vector<contactdata> FindByAlias(std::string alias);
255 std::vector<contactdata> FindByVO(std::string vo);
263 void Order(std::string att);
270 void ResetOrder(
void);
272 void AddTarget(std::string target);
277 std::vector<std::string> ListTargets(
void);
279 void ResetTargets(
void);
280 std::string ServerErrors(
void);
282 bool Retrieve(X509 *cert, STACK_OF(X509) *chain,
292 bool Contact(std::string hostname,
int port,
293 std::string servsubject,
294 std::string command);
304 bool Contact(std::string hostname,
int port,
305 std::string servsubject,
319 bool ContactRaw(std::string hostname,
int port,
320 std::string servsubject,
332 bool ContactRaw(std::string hostname,
int port,
333 std::string servsubject,
352 void SetLifetime(
int lifetime);
356 bool Import(std::string buffer);
363 bool Export(std::string &
data);
370 bool DefaultData(
voms &);
387 bool loadfile(std::string, uid_t uid, gid_t gid);
388 bool loadfile0(std::string, uid_t uid, gid_t gid);
389 bool verifydata(std::string &message, std::string subject, std::string ca,
390 X509 *holder,
voms &v);
391 bool check_cert(X509 *cert);
392 bool retrieve(X509 *cert, STACK_OF(X509) *chain,
recurse_type how,
393 AC_SEQ **listnew, std::string &subject, std::string &ca,
397 std::string serverrors;
398 std::string errmessage;
402 bool check_sig_ac(X509 *,
void *);
404 bool contact(
const std::string&,
int,
const std::string&,
405 const std::string&, std::string&, std::string&,
406 std::string&,
int timeout);
407 bool verifydata(AC *ac,
const std::string& subject,
const std::string& ca,
408 X509 *holder,
voms &v);
409 bool evaluate(AC_SEQ *,
const std::string&,
const std::string&, X509*);
413 std::string ErrorMessage(
void);
428 bool Retrieve(X509_EXTENSION *ext);
443 bool Retrieve(AC *ac);
450 bool check_cert(STACK_OF(X509) *);
451 X509 *check_from_certs(AC *ac,
const std::string& voname);
452 X509 *check_from_file(AC *, std::ifstream&,
const std::string &vo,
const std::string &filename);
461 void SetRetryCount(
int retryCount);
464 void SetVerificationTime(time_t);
467 time_t verificationtime;
468 bool verifyac(X509 *, X509 *, AC*, time_t,
voms&);
471 bool LoadCredentials(X509*, EVP_PKEY *, STACK_OF(X509) *);
472 bool ContactRESTRaw(
const std::string&,
int,
const std::string&, std::string&,
int,
int);
475 bool InterpretOutput(
const std::string&, std::string&);
int getVOMSMajorVersionNumber(void)
int getVOMSMinorVersionNumber(void)
int getVOMSPatchVersionNumber(void)
std::vector< std::string > fqan
bool(* check_sig)(X509 *, void *, verror_type &)
std::vector< attribute > attributes
User's characteristics: can be repeated. Generic name-value attribute : can be repeated.
data_type
The type of data returned.