XrdSecProtocolsss Class Reference

#include <XrdSecProtocolsss.hh>

Inheritance diagram for XrdSecProtocolsss:

XrdSecProtocol List of all members.

Public Member Functions

int Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0)
void Delete ()
XrdSecCredentialsgetCredentials (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)

Private Member Functions

 ~XrdSecProtocolsss ()
int Decode (XrdOucErrInfo *error, XrdSecsssKT::ktEnt &decKey, char *iBuff, XrdSecsssRR_Data *rrData, int iSize)
XrdSecCredentialsEncode (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)

Static Private Member Functions

static XrdCryptoLiteLoad_Crypto (XrdOucErrInfo *erp, const char *eN)
static XrdCryptoLiteLoad_Crypto (XrdOucErrInfo *erp, const char eT)

Private Attributes

char * urName
XrdSecsssKTkeyTab
XrdCryptoLiteCrypto
char * idBuff
int Sequence

Static Private Attributes

static struct Crypto CryptoTab []
static const char * myName
static int myNLen
static int options
static int isMutual
static int deltaTime
static int ktFixed
static XrdSecsssKTktObject
static XrdCryptoLiteCryptObj
static XrdSecsssIDidMap
static char * staticID
static int staticIDsz

Friends

class XrdSecProtocolDummy

Classes

struct  Crypto

Detailed Description

Definition at line 56 of file XrdSecProtocolsss.cc.


Constructor & Destructor Documentation

XrdSecProtocolsss::XrdSecProtocolsss ( const char *  hname,
const struct sockaddr *  ipadd 
) [inline]

Definition at line 53 of file XrdSecProtocolsss.hh.

References urName.

XrdSecProtocolsss::~XrdSecProtocolsss (  )  [inline, private]

Definition at line 62 of file XrdSecProtocolsss.hh.


Member Function Documentation

int XrdSecProtocolsss::Authenticate ( XrdSecCredentials cred,
XrdSecParameters **  parms,
XrdOucErrInfo einfo = 0 
) [virtual]

Implements XrdSecProtocol.

Definition at line 65 of file XrdSecProtocolsss.cc.

References XrdSecsssKT::ktEnt::anyGRP, XrdSecsssKT::ktEnt::anyUSR, XrdSecBuffer::buffer, XrdSecsssRR_Data::Data, XrdSecsssKT::ktEnt::Data, Decode(), Encode(), XrdSecEntity::endorsements, XrdSecProtocol::Entity, Fatal(), free(), getLID(), XrdSecEntity::grps, XrdSecsssKT::ktEnt::ktData::Grup, idBuff, malloc(), XrdSecEntity::name, XrdSecsssRR_Data::Options, XrdSecsssKT::ktEnt::ktData::Opts, XrdOucPup::Pack(), XrdSecEntity::role, setID(), XrdSecBuffer::size, XrdSecsssRR_Data::SndLID, XrdSecsssRR_Data::theEndo, XrdSecsssRR_Data::theGrps, XrdSecsssRR_Data::theHost, XrdSecsssRR_Data::theLgid, XrdSecsssRR_Data::theName, XrdSecsssRR_Data::theRand, XrdSecsssRR_Data::theRole, XrdSecsssRR_Data::theVorg, XrdOucPup::Unpack(), urName, XrdSecsssKT::ktEnt::ktData::User, XrdSecsssKT::ktEnt::usrGRP, and XrdSecEntity::vorg.

void XrdSecProtocolsss::Delete (  )  [virtual]

Implements XrdSecProtocol.

Definition at line 167 of file XrdSecProtocolsss.cc.

References XrdSecProtocol::Entity, free(), XrdSecEntity::host, idBuff, keyTab, ktObject, and urName.

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]

Definition at line 184 of file XrdSecProtocolsss.cc.

References strerror().

Referenced by Fatal().

int XrdSecProtocolsss::Fatal ( XrdOucErrInfo erP,
const char *  epn,
int  rc,
const char *  etxt 
) [static]

Definition at line 203 of file XrdSecProtocolsss.cc.

References CLDBG, eMsg(), and XrdOucErrInfo::setErrInfo().

Referenced by Authenticate(), Decode(), Encode(), getCred(), getCredentials(), Init_Client(), Load_Client(), Load_Crypto(), Load_Server(), and XrdSecProtocolsssObject().

XrdSecCredentials * XrdSecProtocolsss::getCredentials ( XrdSecParameters parms = 0,
XrdOucErrInfo einfo = 0 
) [virtual]

Implements XrdSecProtocol.

Definition at line 217 of file XrdSecProtocolsss.cc.

References XrdSecsssKT::ktEnt::Data, Encode(), XrdSecsssRR_Hdr::EncType, Fatal(), getCred(), XrdSecsssKT::getKey(), htonll, XrdSecsssKT::ktEnt::ktData::ID, XrdSecsssRR_Hdr::KeyID, keyTab, XrdSecsssRR_Hdr::Pad, XrdSecsssRR_Hdr::ProtID, Sequence, strcpy(), and XrdSecPROTOIDENT.

int XrdSecProtocolsss::Init_Client ( XrdOucErrInfo erp,
const char *  Parms 
)

Definition at line 254 of file XrdSecProtocolsss.cc.

References CLDBG, deltaTime, Fatal(), XrdSecsssKT::isClient, keyTab, ktFixed, ktObject, Load_Crypto(), XrdSecsssKT::Same(), stat, and strtol().

Referenced by XrdSecProtocolsssObject().

int XrdSecProtocolsss::Init_Server ( XrdOucErrInfo erp,
const char *  Parms 
)

Definition at line 307 of file XrdSecProtocolsss.cc.

References CryptObj, keyTab, and ktObject.

Referenced by XrdSecProtocolsssObject().

char * XrdSecProtocolsss::Load_Client ( XrdOucErrInfo erp,
const char *  Parms 
) [static]

Definition at line 321 of file XrdSecProtocolsss.cc.

References CLDBG, Fatal(), XrdSecsssKT::genFN(), getenv(), XrdNetDNS::getHostName(), XrdSecsssID::getObj(), XrdSecsssID::idDynamic, idMap, XrdSecsssID::idStatic, XrdSecsssID::idStaticM, XrdSecsssKT::isClient, isMutual, ktFixed, ktObject, myName, myNLen, stat, staticID, and staticIDsz.

Referenced by XrdSecProtocolsssInit().

char * XrdSecProtocolsss::Load_Server ( XrdOucErrInfo erp,
const char *  Parms 
) [static]

Definition at line 440 of file XrdSecProtocolsss.cc.

References CLDBG, CryptObj, deltaTime, Fatal(), XrdSecsssKT::genFN(), XrdOucTokenizer::GetLine(), XrdOucTokenizer::GetToken(), XrdSecsssKT::isServer, ktFixed, ktObject, Load_Crypto(), sprintf(), strlcpy(), strtol(), and XrdCryptoLite::Type().

Referenced by XrdSecProtocolsssInit().

static void XrdSecProtocolsss::setOpts ( int  opts  )  [inline, static]

Definition at line 51 of file XrdSecProtocolsss.hh.

References options.

Referenced by XrdSecProtocolsssInit().

int XrdSecProtocolsss::Decode ( XrdOucErrInfo error,
XrdSecsssKT::ktEnt decKey,
char *  iBuff,
XrdSecsssRR_Data rrData,
int  iSize 
) [private]

Definition at line 520 of file XrdSecProtocolsss.cc.

References XrdSecsssKT::ktEnt::Data, XrdSecsssRR_Data::DataSz, deltaTime, emsg(), XrdSecsssRR_Hdr::EncType, ENOTSUP, error, Fatal(), XrdSecsssKT::getKey(), XrdSecsssKT::ktEnt::ktData::ID, XrdSecsssRR_Hdr::KeyID, keyTab, XrdSecsssKT::ktEnt::ktData::Len, myClock(), XrdSecsssKT::ktEnt::ktData::Name, ntohll, XrdSecsssRR_Hdr::ProtID, snprintf, XrdSecsssKT::ktEnt::ktData::Val, and XrdSecPROTOIDENT.

Referenced by Authenticate(), and getCred().

XrdSecCredentials * XrdSecProtocolsss::Encode ( XrdOucErrInfo error,
XrdSecsssKT::ktEnt encKey,
XrdSecsssRR_Hdr rrHdr,
XrdSecsssRR_Data rrData,
int  dLen 
) [private]

Definition at line 580 of file XrdSecProtocolsss.cc.

References CLDBG, XrdSecsssRR_Data::Data, XrdSecsssKT::ktEnt::Data, ENOBUFS, Fatal(), XrdSecsssKT::genKey(), XrdSecsssRR_Data::GenTime, XrdSecsssKT::ktEnt::ktData::ID, XrdSecsssKT::ktEnt::ktData::Len, malloc(), myClock(), myName, myNLen, XrdOucPup::Pack(), XrdSecsssRR_Data::Pad, XrdSecsssRR_Data::Rand, XrdSecsssRR_Data::theHost, XrdSecsssRR_Data::theRand, and XrdSecsssKT::ktEnt::ktData::Val.

Referenced by Authenticate(), and getCredentials().

int XrdSecProtocolsss::getCred ( XrdOucErrInfo ,
XrdSecsssRR_Data  
) [private]

Definition at line 650 of file XrdSecProtocolsss.cc.

References XrdSecsssRR_Data::Data, isMutual, XrdSecsssRR_Data::Options, Sequence, XrdSecsssRR_Data::SndLID, staticID, staticIDsz, and XrdSecsssRR_Data_HdrLen.

Referenced by getCredentials().

int XrdSecProtocolsss::getCred ( XrdOucErrInfo ,
XrdSecsssRR_Data ,
XrdSecParameters  
) [private]

Definition at line 673 of file XrdSecProtocolsss.cc.

References XrdSecBuffer::buffer, XrdSecsssRR_Data::Data, Decode(), Fatal(), XrdSecsssID::Find(), idMap, XrdSecsssRR_Data::Options, XrdSecBuffer::size, staticID, staticIDsz, XrdSecsssRR_Data::theLgid, XrdSecsssRR_Data::theRand, XrdOucPup::Unpack(), XrdSecsssRR_Data::UseData, and XrdSecsssRR_Data_HdrLen.

char * XrdSecProtocolsss::getLID ( char *  buff,
int  blen 
) [private]

Definition at line 739 of file XrdSecProtocolsss.cc.

References RootCsg::dot(), XrdSecProtocol::Entity, strcpy(), and XrdSecEntity::tident.

Referenced by Authenticate().

XrdCryptoLite * XrdSecProtocolsss::Load_Crypto ( XrdOucErrInfo erp,
const char *  eN 
) [static, private]

Definition at line 376 of file XrdSecProtocolsss.cc.

References XrdCryptoLite::Create(), CryptoTab, Fatal(), i, sprintf(), and strerror().

Referenced by Init_Client(), and Load_Server().

XrdCryptoLite * XrdSecProtocolsss::Load_Crypto ( XrdOucErrInfo erp,
const char  eT 
) [static, private]

Definition at line 405 of file XrdSecProtocolsss.cc.

References XrdCryptoLite::Create(), CryptObj, CryptoTab, Fatal(), i, sprintf(), strerror(), and XrdCryptoLite::Type().

int XrdSecProtocolsss::myClock (  )  [private]

Definition at line 763 of file XrdSecProtocolsss.cc.

Referenced by Decode(), and Encode().

char * XrdSecProtocolsss::setID ( char *  id,
char **  idP 
) [private]

Definition at line 774 of file XrdSecProtocolsss.cc.

References n, and strcpy().

Referenced by Authenticate().


Friends And Related Function Documentation

friend class XrdSecProtocolDummy [friend]

Definition at line 24 of file XrdSecProtocolsss.hh.


Member Data Documentation

struct Crypto XrdSecProtocolsss::CryptoTab[] [static, private]

Definition at line 79 of file XrdSecProtocolsss.hh.

Referenced by Load_Crypto().

const char * XrdSecProtocolsss::myName [static, private]

Definition at line 81 of file XrdSecProtocolsss.hh.

Referenced by Encode(), and Load_Client().

int XrdSecProtocolsss::myNLen [static, private]

Definition at line 82 of file XrdSecProtocolsss.hh.

Referenced by Encode(), and Load_Client().

char* XrdSecProtocolsss::urName [private]

Definition at line 83 of file XrdSecProtocolsss.hh.

Referenced by Authenticate(), Delete(), and XrdSecProtocolsss().

int XrdSecProtocolsss::options [static, private]

Definition at line 84 of file XrdSecProtocolsss.hh.

Referenced by setOpts().

int XrdSecProtocolsss::isMutual [static, private]

Definition at line 85 of file XrdSecProtocolsss.hh.

Referenced by getCred(), and Load_Client().

int XrdSecProtocolsss::deltaTime [static, private]

Definition at line 86 of file XrdSecProtocolsss.hh.

Referenced by Decode(), Init_Client(), and Load_Server().

int XrdSecProtocolsss::ktFixed [static, private]

Definition at line 87 of file XrdSecProtocolsss.hh.

Referenced by Init_Client(), Load_Client(), and Load_Server().

XrdSecsssKT * XrdSecProtocolsss::ktObject [static, private]

Definition at line 89 of file XrdSecProtocolsss.hh.

Referenced by Delete(), Init_Client(), Init_Server(), Load_Client(), and Load_Server().

XrdSecsssKT* XrdSecProtocolsss::keyTab [private]

Definition at line 90 of file XrdSecProtocolsss.hh.

Referenced by Decode(), Delete(), getCredentials(), Init_Client(), and Init_Server().

XrdCryptoLite * XrdSecProtocolsss::CryptObj [static, private]

Definition at line 92 of file XrdSecProtocolsss.hh.

Referenced by Init_Server(), Load_Crypto(), and Load_Server().

XrdCryptoLite* XrdSecProtocolsss::Crypto [private]

Definition at line 93 of file XrdSecProtocolsss.hh.

XrdSecsssID * XrdSecProtocolsss::idMap [static, private]

Definition at line 95 of file XrdSecProtocolsss.hh.

Referenced by getCred(), and Load_Client().

char* XrdSecProtocolsss::idBuff [private]

Definition at line 96 of file XrdSecProtocolsss.hh.

Referenced by Authenticate(), and Delete().

char * XrdSecProtocolsss::staticID [static, private]

Definition at line 97 of file XrdSecProtocolsss.hh.

Referenced by getCred(), and Load_Client().

int XrdSecProtocolsss::staticIDsz [static, private]

Definition at line 98 of file XrdSecProtocolsss.hh.

Referenced by getCred(), and Load_Client().

int XrdSecProtocolsss::Sequence [private]

Definition at line 99 of file XrdSecProtocolsss.hh.

Referenced by getCred(), and getCredentials().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:44 2011 for ROOT_528-00b_version by  doxygen 1.5.1