![]() |
XRootD
|
Public Member Functions | |
XrdSecProtocolkrb5 (const char *KP, const char *hname, XrdNetAddrInfo &endPoint) | |
int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0) |
void | Delete () |
Delete the protocol object. DO NOT use C++ delete() on this object. More... | |
XrdSecCredentials * | getCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0) |
![]() | |
XrdSecProtocol (const char *pName) | |
Constructor. More... | |
virtual int | Decrypt (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
virtual int | Encrypt (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
virtual int | getKey (char *buff=0, int size=0) |
virtual bool | needTLS () |
Check if this protocol requires TLS to properly function. More... | |
virtual int | setKey (char *buff, int size) |
virtual int | Sign (const char *inbuff, int inlen, XrdSecBuffer **outbuff) |
virtual int | Verify (const char *inbuff, int inlen, const char *sigbuff, int siglen) |
Static Public Member Functions | |
static char * | getPrincipal () |
static int | Init (XrdOucErrInfo *einfo, char *KP=0, char *kfn=0) |
static void | setClientOpts (int opts) |
static void | setExpFile (char *expfile) |
static void | setOpts (int opts) |
static void | setParms (char *param) |
Friends | |
class | XrdSecProtocolDummy |
Additional Inherited Members | |
![]() | |
XrdSecEntity | Entity |
![]() | |
virtual | ~XrdSecProtocol () |
Destructor (prevents use of direct delete). More... | |
Definition at line 91 of file XrdSecProtocolkrb5.cc.
|
inline |
Definition at line 120 of file XrdSecProtocolkrb5.cc.
References XrdSecEntity::addrInfo, XrdSecProtocol::Entity, XrdSecEntity::host, XrdSecEntity::name, and XrdSsi::Service.
|
virtual |
Authenticate a client.
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. |
Implements XrdSecProtocol.
Definition at line 416 of file XrdSecProtocolkrb5.cc.
References XrdSecBuffer::buffer, CLDBG, ec, emsg(), XrdSecProtocol::Entity, Fatal(), krb_etxt, XrdSysMutex::Lock(), XrdSecEntity::prot, XrdSecBuffer::size, XrdSysMutex::UnLock(), XrdSecEXPTKN, XrdSecNOIPCHK, XrdSecPROTOIDENT, and XrdSecPROTOIDLEN.
|
virtual |
Delete the protocol object. DO NOT use C++ delete() on this object.
Implements XrdSecProtocol.
Definition at line 202 of file XrdSecProtocolkrb5.cc.
References XrdSecProtocol::Entity, XrdSecEntity::host, and XrdSsi::Service.
|
virtual |
Generate client credentials to be used in the authentication process.
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. |
Implements XrdSecProtocol.
Definition at line 218 of file XrdSecProtocolkrb5.cc.
References access(), CLDBG, CLPRT, Fatal(), XrdOucEnv::Get(), XrdOucErrInfo::getEnv(), XrdSysMutex::Lock(), XrdSsi::Service, XrdSysMutex::UnLock(), XrdSecEXPTKN, XrdSecINITTKN, XrdSecPROTOIDENT, and XrdSecPROTOIDLEN.
|
inlinestatic |
Definition at line 103 of file XrdSecProtocolkrb5.cc.
Referenced by XrdSecProtocolkrb5Init().
|
static |
Definition at line 568 of file XrdSecProtocolkrb5.cc.
References CLPRT, and Fatal().
Referenced by XrdSecProtocolkrb5Init().
|
inlinestatic |
Definition at line 108 of file XrdSecProtocolkrb5.cc.
References opts.
Referenced by XrdSecProtocolkrb5Init().
|
inlinestatic |
Definition at line 110 of file XrdSecProtocolkrb5.cc.
References XrdSecMAXPATHLEN.
Referenced by XrdSecProtocolkrb5Init().
|
inlinestatic |
Definition at line 107 of file XrdSecProtocolkrb5.cc.
References opts.
Referenced by XrdSecProtocolkrb5Init().
|
inlinestatic |
Definition at line 109 of file XrdSecProtocolkrb5.cc.
Referenced by XrdSecProtocolkrb5Init().
|
friend |
Definition at line 94 of file XrdSecProtocolkrb5.cc.