|
xrootd
|
#include <XrdSecProtocolsss.hh>


Classes | |
| struct | Crypto |
Public Member Functions | |
| int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0) |
| void | Delete () |
| XrdSecCredentials * | getCredentials (XrdSecParameters *parms=0, XrdOucErrInfo *einfo=0) |
| int | Init_Client (XrdOucErrInfo *erp, const char *Parms) |
| int | Init_Server (XrdOucErrInfo *erp, const char *Parms) |
| XrdSecProtocolsss (const char *hname, const struct sockaddr *ipadd) | |
Static Public Member Functions | |
| static int | eMsg (const char *epn, int rc, const char *txt1, const char *txt2=0, const char *txt3=0, const char *txt4=0) |
| static int | Fatal (XrdOucErrInfo *erP, const char *epn, int rc, const char *etxt) |
| static char * | Load_Client (XrdOucErrInfo *erp, const char *Parms) |
| static char * | Load_Server (XrdOucErrInfo *erp, const char *Parms) |
| static void | setOpts (int opts) |
Public Attributes | |
| bf32 | |
Private Member Functions | |
| ~XrdSecProtocolsss () | |
| int | Decode (XrdOucErrInfo *error, XrdSecsssKT::ktEnt &decKey, char *iBuff, XrdSecsssRR_Data *rrData, int iSize) |
| XrdSecCredentials * | Encode (XrdOucErrInfo *error, XrdSecsssKT::ktEnt &encKey, XrdSecsssRR_Hdr *rrHdr, XrdSecsssRR_Data *rrData, int dLen) |
| int | getCred (XrdOucErrInfo *, XrdSecsssRR_Data &) |
| int | getCred (XrdOucErrInfo *, XrdSecsssRR_Data &, XrdSecParameters *) |
| char * | getLID (char *buff, int blen) |
| int | myClock () |
| char * | setID (char *id, char **idP) |
| void | setIP (const struct sockaddr *sockP) |
Static Private Member Functions | |
| static XrdCryptoLite * | Load_Crypto (XrdOucErrInfo *erp, const char *eN) |
| static XrdCryptoLite * | Load_Crypto (XrdOucErrInfo *erp, const char eT) |
Private Attributes | |
| char * | urName |
| char | urIP [64] |
| XrdSecsssKT * | keyTab |
| XrdCryptoLite * | Crypto |
| char * | idBuff |
| int | Sequence |
Static Private Attributes | |
| static struct Crypto | CryptoTab [] |
| static const char * | myName |
| static int | myNLen |
| static int | options = 0 |
| static int | isMutual = 0 |
| static int | deltaTime = 13 |
| static int | ktFixed = 0 |
| static XrdSecsssKT * | ktObject = 0 |
| static XrdCryptoLite * | CryptObj = 0 |
| static XrdSecsssID * | idMap = 0 |
| static char * | staticID = 0 |
| static int | staticIDsz = 0 |
Friends | |
| class | XrdSecProtocolDummy |
| XrdSecProtocolsss::XrdSecProtocolsss | ( | const char * | hname, |
| const struct sockaddr * | ipadd | ||
| ) | [inline] |
| XrdSecProtocolsss::~XrdSecProtocolsss | ( | ) | [inline, private] |
| int XrdSecProtocolsss::Authenticate | ( | XrdSecCredentials * | cred, |
| XrdSecParameters ** | parms, | ||
| XrdOucErrInfo * | einfo = 0 |
||
| ) | [virtual] |
Implements XrdSecProtocol.
References XrdSecBuffer::buffer, Decode(), XrdSecBuffer::size, XrdSecsssRR_Data::Options, XrdSecsssRR_Data::SndLID, getLID(), XrdSecsssRR_Data::Data, XrdOucPup::Pack(), Encode(), XrdOucPup::Unpack(), Fatal(), XrdSecEntity::name, XrdSecEntity::vorg, XrdSecEntity::role, XrdSecEntity::grps, XrdSecEntity::endorsements, CLDBG, urName, urIP, XrdSecsssKT::ktEnt::Data, XrdSecsssKT::ktEnt::ktData::Opts, XrdSecsssKT::ktEnt::anyUSR, XrdSecsssKT::ktEnt::ktData::User, XrdSecsssKT::ktEnt::usrGRP, XrdSecsssKT::ktEnt::anyGRP, XrdSecsssKT::ktEnt::ktData::Grup, idBuff, XrdSecProtocol::Entity, and setID().
| int XrdSecProtocolsss::Decode | ( | XrdOucErrInfo * | error, |
| XrdSecsssKT::ktEnt & | decKey, | ||
| char * | iBuff, | ||
| XrdSecsssRR_Data * | rrData, | ||
| int | iSize | ||
| ) | [private] |
References Fatal(), XrdSecsssRR_Hdr::ProtID, XrdSecPROTOIDENT, emsg(), snprintf, XrdSecsssRR_Hdr::EncType, XrdSecsssKT::ktEnt::Data, XrdSecsssKT::ktEnt::ktData::ID, ntohll, XrdSecsssRR_Hdr::KeyID, XrdSecsssKT::ktEnt::ktData::Name, keyTab, XrdSecsssKT::getKey(), XrdSecsssKT::ktEnt::ktData::Val, XrdSecsssKT::ktEnt::ktData::Len, deltaTime, and myClock().
Referenced by Authenticate(), and getCred().
| void XrdSecProtocolsss::Delete | ( | ) | [virtual] |
Implements XrdSecProtocol.
References XrdSecProtocol::Entity, XrdSecEntity::host, urName, idBuff, keyTab, and ktObject.
Referenced by XrdSecProtocolsssObject().
| int XrdSecProtocolsss::eMsg | ( | const char * | epn, |
| int | rc, | ||
| const char * | txt1, | ||
| const char * | txt2 = 0, |
||
| const char * | txt3 = 0, |
||
| const char * | txt4 = 0 |
||
| ) | [static] |
Referenced by Fatal().
| XrdSecCredentials * XrdSecProtocolsss::Encode | ( | XrdOucErrInfo * | error, |
| XrdSecsssKT::ktEnt & | encKey, | ||
| XrdSecsssRR_Hdr * | rrHdr, | ||
| XrdSecsssRR_Data * | rrData, | ||
| int | dLen | ||
| ) | [private] |
References XrdSecsssRR_Data::Data, myNLen, Fatal(), ENOBUFS, XrdOucErrInfo::getEnv(), XrdOucEnv::Get(), XrdOucPup::Pack(), CLDBG, myName, XrdSecsssKT::genKey(), XrdSecsssRR_Data::Rand, XrdSecsssRR_Data::GenTime, myClock(), XrdSecsssRR_Data::Pad, XrdSecsssKT::ktEnt::Data, XrdSecsssKT::ktEnt::ktData::Val, XrdSecsssKT::ktEnt::ktData::Len, and XrdSecsssKT::ktEnt::ktData::ID.
Referenced by Authenticate(), and getCredentials().
| int XrdSecProtocolsss::Fatal | ( | XrdOucErrInfo * | erP, |
| const char * | epn, | ||
| int | rc, | ||
| const char * | etxt | ||
| ) | [static] |
References XrdOucErrInfo::setErrInfo(), CLDBG, and eMsg().
Referenced by Authenticate(), getCredentials(), Init_Client(), Load_Client(), Load_Crypto(), Load_Server(), Decode(), Encode(), getCred(), and XrdSecProtocolsssObject().
| int XrdSecProtocolsss::getCred | ( | XrdOucErrInfo * | einfo, |
| XrdSecsssRR_Data & | rrData | ||
| ) | [private] |
References Sequence, isMutual, XrdSecsssRR_Data::Options, XrdSecsssRR_Data_HdrLen, XrdSecsssRR_Data::Data, staticID, and staticIDsz.
Referenced by getCredentials().
| int XrdSecProtocolsss::getCred | ( | XrdOucErrInfo * | einfo, |
| XrdSecsssRR_Data & | rrData, | ||
| XrdSecParameters * | parm | ||
| ) | [private] |
| XrdSecCredentials * XrdSecProtocolsss::getCredentials | ( | XrdSecParameters * | parms = 0, |
| XrdOucErrInfo * | einfo = 0 |
||
| ) | [virtual] |
| char * XrdSecProtocolsss::getLID | ( | char * | buff, |
| int | blen | ||
| ) | [private] |
References XrdSecProtocol::Entity, XrdSecEntity::tident, and index().
Referenced by Authenticate().
| int XrdSecProtocolsss::Init_Client | ( | XrdOucErrInfo * | erp, |
| const char * | Parms | ||
| ) |
References stat(), Fatal(), Load_Crypto(), deltaTime, ktFixed, ktObject, XrdSecsssKT::Same(), keyTab, XrdSecsssKT::isClient, XrdOucErrInfo::getErrInfo(), and CLDBG.
Referenced by XrdSecProtocolsssObject().
| int XrdSecProtocolsss::Init_Server | ( | XrdOucErrInfo * | erp, |
| const char * | Parms | ||
| ) |
References keyTab, ktObject, and CryptObj.
Referenced by XrdSecProtocolsssObject().
| char * XrdSecProtocolsss::Load_Client | ( | XrdOucErrInfo * | erp, |
| const char * | Parms | ||
| ) | [static] |
References XrdSecsssKT::genFN(), stat(), myName, XrdSysDNS::getHostName(), Fatal(), myNLen, idMap, XrdSecsssID::getObj(), staticID, staticIDsz, isMutual, ktFixed, ktObject, XrdSecsssKT::isClient, XrdOucErrInfo::getErrInfo(), and CLDBG.
Referenced by XrdSecProtocolsssInit().
| XrdCryptoLite * XrdSecProtocolsss::Load_Crypto | ( | XrdOucErrInfo * | erp, |
| const char * | eN | ||
| ) | [static, private] |
References CryptoTab, Fatal(), and XrdCryptoLite::Create().
Referenced by Init_Client(), and Load_Server().
| XrdCryptoLite * XrdSecProtocolsss::Load_Crypto | ( | XrdOucErrInfo * | erp, |
| const char | eT | ||
| ) | [static, private] |
References CryptObj, XrdCryptoLite::Type(), CryptoTab, Fatal(), and XrdCryptoLite::Create().
| char * XrdSecProtocolsss::Load_Server | ( | XrdOucErrInfo * | erp, |
| const char * | Parms | ||
| ) | [static] |
References strlcpy(), XrdOucTokenizer::GetLine(), XrdOucTokenizer::GetToken(), Fatal(), CryptObj, Load_Crypto(), XrdSecsssKT::genFN(), deltaTime, ktObject, XrdSecsssKT::isServer, XrdOucErrInfo::getErrInfo(), ktFixed, CLDBG, and XrdCryptoLite::Type().
Referenced by XrdSecProtocolsssInit().
| char * XrdSecProtocolsss::setID | ( | char * | id, |
| char ** | idP | ||
| ) | [private] |
Referenced by Authenticate().
| void XrdSecProtocolsss::setIP | ( | const struct sockaddr * | sockP | ) | [private] |
References XrdSysDNS::IPFormat(), and urIP.
Referenced by XrdSecProtocolsss().
| static void XrdSecProtocolsss::setOpts | ( | int | opts | ) | [inline, static] |
Referenced by XrdSecProtocolsssInit().
friend class XrdSecProtocolDummy [friend] |
XrdCryptoLite* XrdSecProtocolsss::Crypto [private] |
XrdCryptoLite * XrdSecProtocolsss::CryptObj = 0 [static, private] |
Referenced by Init_Server(), Load_Crypto(), and Load_Server().
struct Crypto XrdSecProtocolsss::CryptoTab[] [static, private] |
Referenced by Load_Crypto().
int XrdSecProtocolsss::deltaTime = 13 [static, private] |
Referenced by Init_Client(), Load_Server(), and Decode().
char* XrdSecProtocolsss::idBuff [private] |
Referenced by Authenticate(), and Delete().
XrdSecsssID * XrdSecProtocolsss::idMap = 0 [static, private] |
Referenced by Load_Client(), and getCred().
int XrdSecProtocolsss::isMutual = 0 [static, private] |
Referenced by Load_Client(), and getCred().
XrdSecsssKT* XrdSecProtocolsss::keyTab [private] |
Referenced by Delete(), getCredentials(), Init_Client(), Init_Server(), and Decode().
int XrdSecProtocolsss::ktFixed = 0 [static, private] |
Referenced by Init_Client(), Load_Client(), and Load_Server().
XrdSecsssKT * XrdSecProtocolsss::ktObject = 0 [static, private] |
Referenced by Delete(), Init_Client(), Init_Server(), Load_Client(), and Load_Server().
const char * XrdSecProtocolsss::myName [static, private] |
Referenced by Load_Client(), and Encode().
int XrdSecProtocolsss::myNLen [static, private] |
Referenced by Load_Client(), and Encode().
int XrdSecProtocolsss::options = 0 [static, private] |
Referenced by setOpts().
int XrdSecProtocolsss::Sequence [private] |
Referenced by getCredentials(), and getCred().
char * XrdSecProtocolsss::staticID = 0 [static, private] |
Referenced by Load_Client(), and getCred().
int XrdSecProtocolsss::staticIDsz = 0 [static, private] |
Referenced by Load_Client(), and getCred().
char XrdSecProtocolsss::urIP[64] [private] |
Referenced by Authenticate(), and setIP().
char* XrdSecProtocolsss::urName [private] |
Referenced by Authenticate(), Delete(), and XrdSecProtocolsss().
1.7.5