/usr/include/arc/credentialstore/ClientVOMS.h is in nordugrid-arc-dev 5.0.5-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | // -*- indent-tabs-mode: nil -*-
#ifndef __ARC_CLIENTVOMS_H__
#define __ARC_CLIENTVOMS_H__
#include <string>
#include <arc/communication/ClientInterface.h>
namespace Arc {
class VOMSCommand {
// According to https://wiki.italiangrid.it/twiki/bin/view/VOMS/VOMSProtocol
// Note that List andd Query commands are deprecated
// and hence not present here.
private:
std::string str;
public:
VOMSCommand(void) {};
~VOMSCommand(void) {};
VOMSCommand& GetGroup(const std::string& groupname);
VOMSCommand& GetRole(const std::string& rolename);
VOMSCommand& GetRoleInGroup(const std::string& groupname, const std::string& rolename);
VOMSCommand& GetEverything(void);
VOMSCommand& GetFQANs(void);
VOMSCommand& GetFQAN(const std::string& fqan);
const std::string& Str(void) const { return str; };
operator const std::string&(void) const { return str; };
};
class ClientVOMS
: public ClientTCP {
public:
ClientVOMS() {}
ClientVOMS(const BaseConfig& cfg, const std::string& host, int port, TCPSec sec, int timeout = -1);
virtual ~ClientVOMS();
virtual MCC_Status Load();
MCC_Status process(const VOMSCommand& command,
const Period& lifetime,
std::string& result);
MCC_Status process(const VOMSCommand& command,
const std::list<std::pair<std::string,std::string> >& order,
const Period& lifetime,
std::string& result);
MCC_Status process(const std::list<VOMSCommand>& commands,
const Period& lifetime,
std::string& result);
MCC_Status process(const std::list<VOMSCommand>& commands,
const std::list<std::pair<std::string,std::string> >& order,
const Period& lifetime,
std::string& result);
};
} // namespace Arc
#endif // __ARC_CLIENTVOMS_H__
|