xrootd
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends

XrdCryptoX509Chain Class Reference

#include <XrdCryptoX509Chain.hh>

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

List of all members.

Public Types

enum  ECAStatus { kUnknown = 0, kAbsent, kInvalid, kValid }
enum  EX509ChainErr {
  kNone = 0, kInconsistent, kTooMany, kNoCA,
  kNoCertificate, kInvalidType, kInvalidNames, kRevoked,
  kExpired, kMissingExtension, kVerifyFail, kInvalidSign,
  kCANotAutoSigned
}

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 { kExact = 0, kBegin = 1, kEnd = 2 }

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

Member Enumeration Documentation

Enumerator:
kUnknown 
kAbsent 
kInvalid 
kValid 
Enumerator:
kExact 
kBegin 
kEnd 
Enumerator:
kNone 
kInconsistent 
kTooMany 
kNoCA 
kNoCertificate 
kInvalidType 
kInvalidNames 
kRevoked 
kExpired 
kMissingExtension 
kVerifyFail 
kInvalidSign 
kCANotAutoSigned 

Constructor & Destructor Documentation

XrdCryptoX509Chain::XrdCryptoX509Chain ( XrdCryptoX509 c = 0)
XrdCryptoX509Chain::XrdCryptoX509Chain ( XrdCryptoX509Chain ch)
XrdCryptoX509Chain::~XrdCryptoX509Chain ( ) [virtual]

Member Function Documentation

XrdCryptoX509 * XrdCryptoX509Chain::Begin ( )
const char * XrdCryptoX509Chain::CAhash ( )
const char * XrdCryptoX509Chain::CAname ( )
bool XrdCryptoX509Chain::CheckCA ( bool  checkselfsigned = 1)
int XrdCryptoX509Chain::CheckValidity ( bool  outatfirst = 1,
int  when = 0 
) [virtual]
void XrdCryptoX509Chain::Cleanup ( bool  keepCA = 0)
void XrdCryptoX509Chain::Dump ( )
const char * XrdCryptoX509Chain::EEChash ( )
const char * XrdCryptoX509Chain::EECname ( )
XrdCryptoX509* XrdCryptoX509Chain::End ( ) const [inline]
XrdCryptoX509ChainNode * XrdCryptoX509Chain::Find ( XrdCryptoX509 c) [private]
XrdCryptoX509ChainNode * XrdCryptoX509Chain::FindIssuer ( const char *  issuer,
ESearchMode  mode = kExact,
XrdCryptoX509ChainNode **  p = 0 
) [private]
XrdCryptoX509ChainNode * XrdCryptoX509Chain::FindSubject ( const char *  subject,
ESearchMode  mode = kExact,
XrdCryptoX509ChainNode **  p = 0 
) [private]
void XrdCryptoX509Chain::InsertAfter ( XrdCryptoX509 c,
XrdCryptoX509 cp 
)
const char* XrdCryptoX509Chain::LastError ( ) const [inline]
XrdCryptoX509 * XrdCryptoX509Chain::Next ( )
void XrdCryptoX509Chain::PushBack ( XrdCryptoX509 c)
void XrdCryptoX509Chain::PutInFront ( XrdCryptoX509 c)

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

Referenced by XrdSecProtocolgsi::VerifyCA().

void XrdCryptoX509Chain::Remove ( XrdCryptoX509 c)
int XrdCryptoX509Chain::Reorder ( ) [virtual]
XrdCryptoX509 * XrdCryptoX509Chain::SearchByIssuer ( const char *  issuer,
ESearchMode  mode = kExact 
)
XrdCryptoX509 * XrdCryptoX509Chain::SearchBySubject ( const char *  subject,
ESearchMode  mode = kExact 
)
void XrdCryptoX509Chain::SetStatusCA ( ECAStatus  st) [inline]

References statusCA.

Referenced by XrdSecProtocolgsi::VerifyCA().

int XrdCryptoX509Chain::Size ( ) const [inline]
ECAStatus XrdCryptoX509Chain::StatusCA ( ) const [inline]

References statusCA.

Referenced by XrdCryptoX509Chain().

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

Friends And Related Function Documentation

friend class XrdCryptosslgsiX509Chain [friend]

Member Data Documentation

int XrdCryptoX509Chain::size [private]

The documentation for this class was generated from the following files: