![]() |
XRootD
|
#include <XrdSecProtocolpwd.hh>
Public Member Functions | |
XrdSecProtocolpwd (int opts, const char *hname, XrdNetAddrInfo &endPoint, const char *parms=0) | |
virtual | ~XrdSecProtocolpwd () |
int | Authenticate (XrdSecCredentials *cred, XrdSecParameters **parms, XrdOucErrInfo *einfo=0) |
void | Delete () |
Delete the protocol object. DO NOT use C++ delete() on this object. | |
XrdSecCredentials * | getCredentials (XrdSecParameters *parm=0, XrdOucErrInfo *einfo=0) |
![]() | |
XrdSecProtocol (const char *pName) | |
Constructor. | |
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. | |
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 XrdOucTrace * | EnableTracing () |
static char * | Init (pwdOptions o, XrdOucErrInfo *erp) |
static void | PrintTimeStat () |
Additional Inherited Members | |
![]() | |
XrdSecEntity | Entity |
![]() | |
virtual | ~XrdSecProtocol () |
Destructor (prevents use of direct delete). | |
Definition at line 285 of file XrdSecProtocolpwd.hh.
XrdSecProtocolpwd::XrdSecProtocolpwd | ( | int | opts, |
const char * | hname, | ||
XrdNetAddrInfo & | endPoint, | ||
const char * | parms = 0 ) |
Definition at line 252 of file XrdSecProtocolpwd.cc.
References XrdSecProtocol::XrdSecProtocol(), XrdOucString::c_str(), DEBUG, XrdSecProtocol::Entity, EPNAME, XrdOucString::insert(), XrdOucString::length(), NOTIFY, opts, PRINT, QTRACE, Version, XrdSecPROTOIDENT, and XrdSecPROTOIDLEN.
|
inlinevirtual |
Definition at line 298 of file XrdSecProtocolpwd.hh.
|
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 1169 of file XrdSecProtocolpwd.cc.
References XrdSutBuffer::AddBucket(), XrdOucString::beginswith(), XrdSecBuffer::buffer, XrdSutBucket::buffer, XrdOucString::c_str(), ClientStepStr(), CryptList, pwdStatus_t::ctype, XrdSutBuffer::Deactivate(), DEBUG, XrdSutBuffer::Dump(), XrdSecProtocol::Entity, EPNAME, XrdSutBuffer::GetBucket(), XrdSutBuffer::GetProtocol(), XrdSutBuffer::GetStep(), kOptsAFSPwd, kOptsChngPwd, kOptsClntTty, kOptsCrypPwd, kOptsExpCred, kpCT_afs, kpCT_afsenc, kpCT_crypt, kpCT_new, kpCT_normal, kPFE_allowed, kPFE_crypt, kPFE_disabled, kPFE_expired, kPFE_onetime, kpST_error, kpST_more, kpST_ok, kPWErrAddBucket, kPWErrBadCreds, kPWErrBadOpt, kPWErrBadProtocol, kPWErrBadRndmTag, kPWErrDecodeBuffer, kPWErrError, kPWErrLoadCrypto, kPWErrNoPublic, kPWErrParseBuffer, kPWErrSerialBuffer, kXPC_autoreg, kXPC_creds, kXPC_failureack, kXPC_normal, kXPC_signedrtag, kXPC_verifysrv, kXPS_credsreq, kXPS_failure, kXPS_none, kXPS_puk, kXPS_rtag, kXPS_signedrtag, kXRS_afsinfo, kXRS_creds, kXRS_main, kXRS_message, kXRS_puk, kXRS_status, XrdOucString::length(), NOTIFY, pwdStatus_t::options, ParseCrypto(), PRINT, QTRACE, REL2, SafeDelArray, SafeDelete, XrdSutBuffer::Serialized(), ServerStepStr(), XrdSecBuffer::size, XrdSutBucket::size, XrdSutBucket::ToString(), XrdSutBuffer::UpdateBucket(), XrdSysPrivGuard::Valid(), XrdSecPROTOIDENT, XrdSecPROTOIDLEN, and XrdSutToHex().
|
virtual |
Delete the protocol object. DO NOT use C++ delete() on this object.
Implements XrdSecProtocol.
Definition at line 854 of file XrdSecProtocolpwd.cc.
References XrdSecProtocol::Entity, and SafeDelete.
|
static |
Definition at line 1609 of file XrdSecProtocolpwd.cc.
Referenced by XrdSecProtocolpwdInit().
|
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 870 of file XrdSecProtocolpwd.cc.
References XrdSutBuffer::AddBucket(), XrdSecBuffer::buffer, XrdSutBucket::buffer, XrdOucString::c_str(), ClientStepStr(), CryptList, pwdStatus_t::ctype, XrdSutBuffer::Deactivate(), DEBUG, XrdSutBuffer::Dump(), EPNAME, XrdSutBuffer::GetBucket(), XrdSutBuffer::GetProtocol(), XrdSutBuffer::GetStep(), kOptsChngPwd, kOptsClntTty, kpCT_afs, kpCT_crypt, kpCT_normal, kPFE_onetime, kPWErrAddBucket, kPWErrBadOpt, kPWErrBadProtocol, kPWErrBadRndmTag, kPWErrCreateBucket, kPWErrDecodeBuffer, kPWErrDuplicateBucket, kPWErrError, kPWErrLoadCrypto, kPWErrNoBuffer, kPWErrNoPublic, kPWErrNoUser, kPWErrParseBuffer, kPWErrQueryCreds, kPWErrSerialBuffer, kXPC_autoreg, kXPC_creds, kXPC_failureack, kXPC_none, kXPC_normal, kXPC_signedrtag, kXPC_verifysrv, kXPS_credsreq, kXPS_failure, kXPS_init, kXPS_newpuk, kXPS_puk, kXPS_rtag, kXPS_signedrtag, kXRS_cryptomod, kXRS_main, kXRS_message, kXRS_puk, kXRS_status, kXRS_user, kXRS_version, XrdSutBuffer::MarshalBucket(), XrdSutBuffer::Message(), pwdStatus_t::options, ParseCrypto(), PRINT, QTRACE, REL2, SafeDelArray, XrdSutBuffer::Serialized(), ServerStepStr(), XrdSecBuffer::size, XrdSutBuffer::UpdateBucket(), Version, XrdSecPROTOIDENT, and XrdSutBuckStr().
|
static |
Definition at line 341 of file XrdSecProtocolpwd.cc.
References AdminRef, pwdOptions::alog, pwdOptions::alogfile, pwdOptions::areg, XrdSutPFBuf::buf, XrdSutPFEntry::buf1, XrdOucString::c_str(), XrdCryptoFactory::Cipher(), pwdOptions::clist, pwdOptions::cpass, cryptoTRACE_Debug, cryptoTRACE_Dump, cryptoTRACE_Notify, DEBUG, pwdOptions::debug, pwdOptions::dir, XrdOucString::endswith(), EPNAME, XrdOucString::erase(), pwdOptions::expcreds, pwdOptions::expfmt, XrdCryptoFactory::GetCryptoFactory(), XrdCryptoFactory::ID(), pwdOptions::keepcreds, kPFEcreate, kPWErrError, kPWErrInit, XrdSutPFBuf::len, XrdOucString::length(), pwdOptions::lifecreds, pwdOptions::maxfailures, pwdOptions::maxprompts, pwdOptions::mode, XrdCryptoFactory::Name(), NetRcRef, NOTIFY, Prefix, PRINT, pwdTrace, QTRACE, XrdOucString::rfind(), XrdSutBucket::SetBuf(), XrdCryptoFactory::SetTrace(), pwdOptions::srvpuk, SrvPukRef, stat, sutTRACE_Debug, sutTRACE_Dump, sutTRACE_Notify, pwdOptions::syspwd, XrdOucString::tokenize(), TRACE_ALL, TRACE_Authen, TRACE_Debug, pwdOptions::udir, XrdSutPFCacheRef::UnLock(), pwdOptions::upwd, UserRef, XrdSysPrivGuard::Valid(), pwdOptions::vericlnt, pwdOptions::verisrv, Version, XrdCryptoMax, XrdCryptoSetTrace(), XrdSutExpand(), XrdSutHome(), XrdSutMkdir(), and XrdSutSetTrace().
Referenced by XrdSecProtocolpwdInit().
|
static |