XrdCryptoX509Chain Class Reference

#include <XrdCryptoX509Chain.hh>

Inheritance diagram for XrdCryptoX509Chain:

XrdCryptosslgsiX509Chain List of all members.

Public Types

enum  ECAStatus
enum  EX509ChainErr

Public Member Functions

 XrdCryptoX509Chain (XrdCryptoX509 *c=0)
 XrdCryptoX509Chain (XrdCryptoX509Chain *ch)
virtual ~XrdCryptoX509Chain ()
const char * X509ChainError (EX509ChainErr e)
const char * LastError () const
void Dump ()
int Size () const
XrdCryptoX509End () const
ECAStatus StatusCA () const
const char * CAname ()
const char * EECname ()
const char * CAhash ()
const char * EEChash ()
void InsertAfter (XrdCryptoX509 *c, XrdCryptoX509 *cp)
void PutInFront (XrdCryptoX509 *c)
void PushBack (XrdCryptoX509 *c)
void Remove (XrdCryptoX509 *c)
bool CheckCA (bool checkselfsigned=1)
void Cleanup (bool keepCA=0)
void SetStatusCA (ECAStatus st)
XrdCryptoX509SearchByIssuer (const char *issuer, ESearchMode mode=kExact)
XrdCryptoX509SearchBySubject (const char *subject, ESearchMode mode=kExact)
virtual int CheckValidity (bool outatfirst=1, int when=0)
virtual int Reorder ()
virtual bool Verify (EX509ChainErr &e, x509ChainVerifyOpt_t *vopt=0)
XrdCryptoX509Begin ()
XrdCryptoX509Next ()

Private Types

enum  ESearchMode

Private Member Functions

XrdCryptoX509ChainNodeFind (XrdCryptoX509 *c)
XrdCryptoX509ChainNodeFindIssuer (const char *issuer, ESearchMode mode=kExact, XrdCryptoX509ChainNode **p=0)
XrdCryptoX509ChainNodeFindSubject (const char *subject, ESearchMode mode=kExact, XrdCryptoX509ChainNode **p=0)
bool Verify (EX509ChainErr &e, const char *msg, XrdCryptoX509::EX509Type type, int when, XrdCryptoX509 *xcer, XrdCryptoX509 *xsig, XrdCryptoX509Crl *crl=0)

Private Attributes

XrdCryptoX509ChainNodebegin
XrdCryptoX509ChainNodecurrent
XrdCryptoX509ChainNodeend
XrdCryptoX509ChainNodeprevious
int size
XrdOucString lastError
XrdOucString caname
XrdOucString eecname
XrdOucString cahash
XrdOucString eechash
ECAStatus statusCA

Friends

class XrdCryptosslgsiX509Chain

Detailed Description

Definition at line 60 of file XrdCryptoX509Chain.hh.


Member Enumeration Documentation

enum XrdCryptoX509Chain::ESearchMode [private]

Definition at line 64 of file XrdCryptoX509Chain.hh.

enum XrdCryptoX509Chain::ECAStatus

Definition at line 72 of file XrdCryptoX509Chain.hh.

enum XrdCryptoX509Chain::EX509ChainErr

Definition at line 75 of file XrdCryptoX509Chain.hh.


Constructor & Destructor Documentation

XrdCryptoX509Chain::XrdCryptoX509Chain ( XrdCryptoX509 c = 0  ) 

Definition at line 47 of file XrdCryptoX509Chain.cc.

References begin, c, cahash, caname, current, eechash, eecname, end, XrdCryptoX509::kCA, kInvalid, kNone, kUnknown, kValid, lastError, previous, size, statusCA, and Verify().

XrdCryptoX509Chain::XrdCryptoX509Chain ( XrdCryptoX509Chain ch  ) 

Definition at line 82 of file XrdCryptoX509Chain.cc.

References Begin(), begin, c, cahash, CAhash(), caname, CAname(), current, EEChash(), eechash, EECname(), eecname, end, lastError, LastError(), nc, Next(), previous, XrdCryptoX509ChainNode::SetNext(), size, statusCA, and StatusCA().

XrdCryptoX509Chain::~XrdCryptoX509Chain (  )  [virtual]

Definition at line 113 of file XrdCryptoX509Chain.cc.

References begin, c, and n.


Member Function Documentation

const char * XrdCryptoX509Chain::X509ChainError ( EX509ChainErr  e  ) 

Definition at line 204 of file XrdCryptoX509Chain.cc.

References X509ChainErrStr.

Referenced by CheckCA(), XrdCryptosslgsiX509Chain::SubjectOK(), Verify(), and XrdCryptosslgsiX509Chain::Verify().

const char* XrdCryptoX509Chain::LastError (  )  const [inline]

Definition at line 82 of file XrdCryptoX509Chain.hh.

References XrdOucString::c_str(), and lastError.

Referenced by XrdSecProtocolgsi::ClientDoCert(), XrdSecProtocolgsi::ServerDoCert(), and XrdCryptoX509Chain().

void XrdCryptoX509Chain::Dump (  ) 

Definition at line 475 of file XrdCryptoX509Chain.cc.

References begin, c, CAname(), EECname(), EPNAME, LOCDUMP, n, and Size().

Referenced by main(), XrdSecProtocolgsi::ServerDoSigpxy(), and XrdCryptosslgsiX509Chain::Verify().

int XrdCryptoX509Chain::Size (  )  const [inline]

Definition at line 88 of file XrdCryptoX509Chain.hh.

References size.

Referenced by Dump().

XrdCryptoX509* XrdCryptoX509Chain::End (  )  const [inline]

Definition at line 89 of file XrdCryptoX509Chain.hh.

References XrdCryptoX509ChainNode::Cert(), and end.

Referenced by XrdSecProtocolgsi::ClientDoCert(), XrdSecProtocolgsi::ClientDoPxyreq(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolgsi::ServerDoCert(), XrdSecProtocolgsi::ServerDoSigpxy(), and XrdCryptosslX509ChainToFile().

ECAStatus XrdCryptoX509Chain::StatusCA (  )  const [inline]

Definition at line 90 of file XrdCryptoX509Chain.hh.

References statusCA.

Referenced by XrdCryptoX509Chain().

const char * XrdCryptoX509Chain::CAname (  ) 

Definition at line 769 of file XrdCryptoX509Chain.cc.

References XrdOucString::c_str(), caname, CheckCA(), DEBUG, EPNAME, kUnknown, XrdOucString::length(), and statusCA.

Referenced by Dump(), and XrdCryptoX509Chain().

const char * XrdCryptoX509Chain::EECname (  ) 

Definition at line 788 of file XrdCryptoX509Chain.cc.

References begin, c, XrdOucString::c_str(), DEBUG, eecname, EPNAME, XrdCryptoX509::kEEC, and XrdOucString::length().

Referenced by Dump(), XrdSecProtocolgsi::ServerDoSigpxy(), and XrdCryptoX509Chain().

const char * XrdCryptoX509Chain::CAhash (  ) 

Definition at line 815 of file XrdCryptoX509Chain.cc.

References XrdOucString::c_str(), cahash, CheckCA(), DEBUG, EPNAME, kUnknown, XrdOucString::length(), and statusCA.

Referenced by XrdCryptoX509Chain().

const char * XrdCryptoX509Chain::EEChash (  ) 

Definition at line 834 of file XrdCryptoX509Chain.cc.

References begin, c, XrdOucString::c_str(), DEBUG, eechash, EPNAME, XrdCryptoX509::kEEC, and XrdOucString::length().

Referenced by XrdSecProtocolgsi::Authenticate(), and XrdCryptoX509Chain().

void XrdCryptoX509Chain::InsertAfter ( XrdCryptoX509 c,
XrdCryptoX509 cp 
)

Definition at line 240 of file XrdCryptoX509Chain.cc.

References c, end, Find(), nc, XrdCryptoX509ChainNode::Next(), PushBack(), XrdCryptoX509ChainNode::SetNext(), and size.

void XrdCryptoX509Chain::PutInFront ( XrdCryptoX509 c  ) 

Definition at line 225 of file XrdCryptoX509Chain.cc.

References begin, c, end, Find(), nc, and size.

Referenced by XrdSecProtocolgsi::VerifyCA().

void XrdCryptoX509Chain::PushBack ( XrdCryptoX509 c  ) 

Definition at line 267 of file XrdCryptoX509Chain.cc.

References begin, c, end, Find(), nc, XrdCryptoX509ChainNode::SetNext(), and size.

Referenced by InsertAfter(), main(), XrdSecProtocolgsi::ServerDoSigpxy(), and XrdSslgsiX509CreateProxy().

void XrdCryptoX509Chain::Remove ( XrdCryptoX509 c  ) 

Definition at line 284 of file XrdCryptoX509Chain.cc.

References begin, c, cahash, caname, XrdCryptoX509ChainNode::Cert(), current, XrdCryptoX509::kCA, kUnknown, XrdCryptoX509ChainNode::Next(), previous, XrdCryptoX509ChainNode::SetNext(), size, and statusCA.

Referenced by XrdSecProtocolgsi::VerifyCA().

bool XrdCryptoX509Chain::CheckCA ( bool  checkselfsigned = 1  ) 

Definition at line 158 of file XrdCryptoX509Chain.cc.

References begin, c, cahash, caname, end, XrdCryptoX509::kCA, kInvalid, kNone, kValid, kVerifyFail, lastError, n, p, statusCA, XrdCryptoX509::Subject(), XrdCryptoX509::SubjectHash(), XrdCryptoX509::type, Verify(), and X509ChainError().

Referenced by CAhash(), CAname(), XrdSecProtocolgsi::QueryProxy(), Verify(), and XrdSecProtocolgsi::VerifyCA().

void XrdCryptoX509Chain::Cleanup ( bool  keepCA = 0  ) 

Definition at line 127 of file XrdCryptoX509Chain.cc.

References begin, c, cahash, caname, current, eechash, eecname, end, XrdCryptoX509::kCA, kUnknown, lastError, n, previous, size, and statusCA.

Referenced by XrdSecProtocolgsi::QueryProxy().

void XrdCryptoX509Chain::SetStatusCA ( ECAStatus  st  )  [inline]

Definition at line 103 of file XrdCryptoX509Chain.hh.

References statusCA.

Referenced by XrdSecProtocolgsi::VerifyCA().

XrdCryptoX509 * XrdCryptoX509Chain::SearchByIssuer ( const char *  issuer,
ESearchMode  mode = kExact 
)

Definition at line 360 of file XrdCryptoX509Chain.cc.

References XrdCryptoX509ChainNode::Cert(), and FindIssuer().

XrdCryptoX509 * XrdCryptoX509Chain::SearchBySubject ( const char *  subject,
ESearchMode  mode = kExact 
)

Definition at line 373 of file XrdCryptoX509Chain.cc.

References XrdCryptoX509ChainNode::Cert(), and FindSubject().

Referenced by XrdSecProtocolgsi::ServerDoSigpxy(), and XrdCryptosslX509ChainToFile().

int XrdCryptoX509Chain::CheckValidity ( bool  outatfirst = 1,
int  when = 0 
) [virtual]

Definition at line 671 of file XrdCryptoX509Chain.cc.

References begin, c, DEBUG, EPNAME, nc, and size.

Referenced by XrdSecProtocolgsi::QueryProxy().

int XrdCryptoX509Chain::Reorder (  )  [virtual]

Definition at line 513 of file XrdCryptoX509Chain.cc.

References begin, cahash, caname, DEBUG, eechash, eecname, end, EPNAME, FindSubject(), kAbsent, XrdCryptoX509::kCA, XrdCryptoX509::kEEC, kExact, kUnknown, XrdOucString::length(), nc, XrdCryptoX509ChainNode::Next(), pi, XrdCryptoX509ChainNode::SetNext(), size, and statusCA.

Referenced by main(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolgsi::ServerDoCert(), Verify(), XrdCryptosslgsiX509Chain::Verify(), and XrdCryptosslX509ChainToFile().

bool XrdCryptoX509Chain::Verify ( EX509ChainErr e,
x509ChainVerifyOpt_t vopt = 0 
) [virtual]

Definition at line 602 of file XrdCryptoX509Chain.cc.

References begin, XrdCryptoX509ChainNode::Cert(), CheckCA(), DEBUG, EPNAME, kInconsistent, kNoCA, kNone, kOptsCheckSelfSigned, kTooMany, XrdCryptoX509::kUnknown, lastError, XrdCryptoX509ChainNode::Next(), x509ChainVerifyOpt_t::opt, x509ChainVerifyOpt_t::pathlen, Reorder(), size, x509ChainVerifyOpt_t::when, and X509ChainError().

Referenced by CheckCA(), main(), XrdCryptosslgsiX509Chain::Verify(), and XrdCryptoX509Chain().

XrdCryptoX509 * XrdCryptoX509Chain::Begin (  ) 

Definition at line 334 of file XrdCryptoX509Chain.cc.

References begin, XrdCryptoX509ChainNode::Cert(), current, and previous.

Referenced by XrdSecProtocolgsi::GetCA(), XrdSecProtocolgsi::getCredentials(), XrdSecProtocolgsi::VerifyCA(), and XrdCryptoX509Chain().

XrdCryptoX509 * XrdCryptoX509Chain::Next (  ) 

Definition at line 346 of file XrdCryptoX509Chain.cc.

References XrdCryptoX509ChainNode::Cert(), current, XrdCryptoX509ChainNode::Next(), and previous.

Referenced by XrdSecProtocolgsi::getCredentials(), XrdSecProtocolgsi::VerifyCA(), and XrdCryptoX509Chain().

XrdCryptoX509ChainNode * XrdCryptoX509Chain::Find ( XrdCryptoX509 c  )  [private]

Definition at line 212 of file XrdCryptoX509Chain.cc.

References begin, c, XrdCryptoX509ChainNode::Cert(), and XrdCryptoX509ChainNode::Next().

Referenced by InsertAfter(), PushBack(), and PutInFront().

XrdCryptoX509ChainNode * XrdCryptoX509Chain::FindIssuer ( const char *  issuer,
ESearchMode  mode = kExact,
XrdCryptoX509ChainNode **  p = 0 
) [private]

Definition at line 387 of file XrdCryptoX509Chain.cc.

References begin, c, XrdCryptoX509ChainNode::Cert(), kBegin, kEnd, kExact, n, XrdCryptoX509ChainNode::Next(), and pi.

Referenced by SearchByIssuer().

XrdCryptoX509ChainNode * XrdCryptoX509Chain::FindSubject ( const char *  subject,
ESearchMode  mode = kExact,
XrdCryptoX509ChainNode **  p = 0 
) [private]

Definition at line 431 of file XrdCryptoX509Chain.cc.

References begin, c, XrdCryptoX509ChainNode::Cert(), kBegin, kEnd, kExact, n, and XrdCryptoX509ChainNode::Next().

Referenced by Reorder(), and SearchBySubject().

bool XrdCryptoX509Chain::Verify ( EX509ChainErr e,
const char *  msg,
XrdCryptoX509::EX509Type  type,
int  when,
XrdCryptoX509 xcer,
XrdCryptoX509 xsig,
XrdCryptoX509Crl crl = 0 
) [private]

Definition at line 713 of file XrdCryptoX509Chain.cc.

References XrdOucString::c_str(), XrdCryptoX509Crl::IsRevoked(), XrdCryptoX509::IsValid(), kExpired, kInvalidType, kNoCertificate, kRevoked, XrdCryptoX509::kUnknown, kVerifyFail, lastError, XrdCryptoX509::SerialNumberString(), XrdCryptoX509::type, XrdCryptoX509::Verify(), and X509ChainError().


Friends And Related Function Documentation

friend class XrdCryptosslgsiX509Chain [friend]

Definition at line 62 of file XrdCryptoX509Chain.hh.


Member Data Documentation

XrdCryptoX509ChainNode* XrdCryptoX509Chain::begin [private]

Definition at line 127 of file XrdCryptoX509Chain.hh.

Referenced by Begin(), CheckCA(), CheckValidity(), Cleanup(), Dump(), EEChash(), EECname(), Find(), FindIssuer(), FindSubject(), PushBack(), PutInFront(), Remove(), Reorder(), Verify(), XrdCryptosslgsiX509Chain::Verify(), XrdCryptoX509Chain(), and ~XrdCryptoX509Chain().

XrdCryptoX509ChainNode* XrdCryptoX509Chain::current [private]

Definition at line 128 of file XrdCryptoX509Chain.hh.

Referenced by Begin(), Cleanup(), Next(), Remove(), and XrdCryptoX509Chain().

XrdCryptoX509ChainNode* XrdCryptoX509Chain::end [private]

Definition at line 129 of file XrdCryptoX509Chain.hh.

Referenced by CheckCA(), Cleanup(), End(), InsertAfter(), PushBack(), PutInFront(), Reorder(), and XrdCryptoX509Chain().

XrdCryptoX509ChainNode* XrdCryptoX509Chain::previous [private]

Definition at line 130 of file XrdCryptoX509Chain.hh.

Referenced by Begin(), Cleanup(), Next(), Remove(), and XrdCryptoX509Chain().

int XrdCryptoX509Chain::size [private]

Definition at line 131 of file XrdCryptoX509Chain.hh.

Referenced by CheckValidity(), Cleanup(), InsertAfter(), PushBack(), PutInFront(), Remove(), Reorder(), Size(), Verify(), XrdCryptosslgsiX509Chain::Verify(), and XrdCryptoX509Chain().

XrdOucString XrdCryptoX509Chain::lastError [private]

Definition at line 132 of file XrdCryptoX509Chain.hh.

Referenced by CheckCA(), Cleanup(), LastError(), XrdCryptosslgsiX509Chain::SubjectOK(), Verify(), XrdCryptosslgsiX509Chain::Verify(), and XrdCryptoX509Chain().

XrdOucString XrdCryptoX509Chain::caname [private]

Definition at line 133 of file XrdCryptoX509Chain.hh.

Referenced by CAname(), CheckCA(), Cleanup(), Remove(), Reorder(), and XrdCryptoX509Chain().

XrdOucString XrdCryptoX509Chain::eecname [private]

Definition at line 134 of file XrdCryptoX509Chain.hh.

Referenced by Cleanup(), EECname(), Reorder(), and XrdCryptoX509Chain().

XrdOucString XrdCryptoX509Chain::cahash [private]

Definition at line 135 of file XrdCryptoX509Chain.hh.

Referenced by CAhash(), CheckCA(), Cleanup(), Remove(), Reorder(), and XrdCryptoX509Chain().

XrdOucString XrdCryptoX509Chain::eechash [private]

Definition at line 136 of file XrdCryptoX509Chain.hh.

Referenced by Cleanup(), EEChash(), Reorder(), and XrdCryptoX509Chain().

ECAStatus XrdCryptoX509Chain::statusCA [private]

Definition at line 137 of file XrdCryptoX509Chain.hh.

Referenced by CAhash(), CAname(), CheckCA(), Cleanup(), Remove(), Reorder(), SetStatusCA(), StatusCA(), XrdCryptosslgsiX509Chain::Verify(), and XrdCryptoX509Chain().


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