XrdSecProtocolsss Class Reference

#include <XrdSecProtocolsss.hh>

Inheritance diagram for XrdSecProtocolsss:
Inheritance graph
[legend]
Collaboration diagram for XrdSecProtocolsss:
Collaboration graph
[legend]

List of all members.

Classes

struct  Crypto

Public Member Functions

int Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0)
void Delete ()
 Delete the protocol object. DO NOT use C++ delete() on this object.
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, XrdNetAddrInfo &endPoint)

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)
void setIP (XrdNetAddrInfo &endPoint)

Static Private Member Functions

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

Private Attributes

char * urName
char urIP [48]
char urIQ [48]
XrdNetAddrInfo epAddr
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

Constructor & Destructor Documentation

XrdSecProtocolsss::XrdSecProtocolsss ( const char *  hname,
XrdNetAddrInfo endPoint 
) [inline]

References setIP(), and urName.

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

Member Function Documentation

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

Authenticate a client.

Parameters:
cred Credentials supplied by the client.
parms Place where the address of additional authentication data is to be placed for another autrhentication handshake.
einfo The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr.
Returns:
> 0 -> parms present (more authentication needed) = 0 -> Entity present (authentication suceeded) < 0 -> einfo present (error has occured)

Implements XrdSecProtocol.

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

Delete the protocol object. DO NOT use C++ delete() on this object.

Implements XrdSecProtocol.

static int XrdSecProtocolsss::eMsg ( const char *  epn,
int  rc,
const char *  txt1,
const char *  txt2 = 0,
const char *  txt3 = 0,
const char *  txt4 = 0 
) [static]
XrdSecCredentials* XrdSecProtocolsss::Encode ( XrdOucErrInfo error,
XrdSecsssKT::ktEnt encKey,
XrdSecsssRR_Hdr rrHdr,
XrdSecsssRR_Data rrData,
int  dLen 
) [private]
static int XrdSecProtocolsss::Fatal ( XrdOucErrInfo erP,
const char *  epn,
int  rc,
const char *  etxt 
) [static]
int XrdSecProtocolsss::getCred ( XrdOucErrInfo ,
XrdSecsssRR_Data ,
XrdSecParameters  
) [private]
int XrdSecProtocolsss::getCred ( XrdOucErrInfo ,
XrdSecsssRR_Data  
) [private]
XrdSecCredentials* XrdSecProtocolsss::getCredentials ( XrdSecParameters parm = 0,
XrdOucErrInfo einfo = 0 
) [virtual]

Generate client credentials to be used in the authentication process.

Parameters:
parm Pointer to the information returned by the server either in the initial login response or the authmore response.
einfo The error information object where error messages should be placed. The messages are returned to the client. Should einfo be null, messages should be written to stderr.
Returns:
Success: Pointer to credentials to sent to the server. The caller is responsible for deleting the object. Failure: Null pointer with einfo, if supplied, containing the reason for the failure.

Implements XrdSecProtocol.

char* XrdSecProtocolsss::getLID ( char *  buff,
int  blen 
) [private]
int XrdSecProtocolsss::Init_Client ( XrdOucErrInfo erp,
const char *  Parms 
)
int XrdSecProtocolsss::Init_Server ( XrdOucErrInfo erp,
const char *  Parms 
)
static char* XrdSecProtocolsss::Load_Client ( XrdOucErrInfo erp,
const char *  Parms 
) [static]
static XrdCryptoLite* XrdSecProtocolsss::Load_Crypto ( XrdOucErrInfo erp,
const char  eT 
) [static, private]
static XrdCryptoLite* XrdSecProtocolsss::Load_Crypto ( XrdOucErrInfo erp,
const char *  eN 
) [static, private]
static char* XrdSecProtocolsss::Load_Server ( XrdOucErrInfo erp,
const char *  Parms 
) [static]
int XrdSecProtocolsss::myClock (  )  [private]
char* XrdSecProtocolsss::setID ( char *  id,
char **  idP 
) [private]
void XrdSecProtocolsss::setIP ( XrdNetAddrInfo endPoint  )  [private]

Referenced by XrdSecProtocolsss().

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

References options.


Friends And Related Function Documentation

friend class XrdSecProtocolDummy [friend]

Member Data Documentation

struct Crypto XrdSecProtocolsss::CryptoTab[] [static, read, private]
int XrdSecProtocolsss::deltaTime [static, private]
char* XrdSecProtocolsss::idBuff [private]
int XrdSecProtocolsss::isMutual [static, private]
int XrdSecProtocolsss::ktFixed [static, private]
const char* XrdSecProtocolsss::myName [static, private]
int XrdSecProtocolsss::myNLen [static, private]
int XrdSecProtocolsss::options [static, private]

Referenced by setOpts().

char* XrdSecProtocolsss::staticID [static, private]
int XrdSecProtocolsss::staticIDsz [static, private]
char XrdSecProtocolsss::urIP[48] [private]
char XrdSecProtocolsss::urIQ[48] [private]
char* XrdSecProtocolsss::urName [private]

Referenced by XrdSecProtocolsss().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 8 May 2020 for xrootd by  doxygen 1.6.1