1 #ifndef __CRYPTO_X509CHAIN_H__
2 #define __CRYPTO_X509CHAIN_H__
71 { cert = c; next = n;}
82 enum ESearchMode { kExact = 0, kBegin = 1, kEnd = 2 };
121 bool CheckCA(
bool checkselfsigned = 1);
127 ESearchMode mode = kExact);
129 ESearchMode mode = kExact);
132 virtual int CheckValidity(
bool outatfirst = 1,
int when = 0);
162 ESearchMode mode = kExact,
165 ESearchMode mode = kExact,
const int kOptsCheckSelfSigned
const int kOptsCheckSubCA
XrdCryptoX509ChainNode(XrdCryptoX509 *c=0, XrdCryptoX509ChainNode *n=0)
XrdCryptoX509 * Cert() const
virtual ~XrdCryptoX509ChainNode()
void SetNext(XrdCryptoX509ChainNode *n)
XrdCryptoX509ChainNode * Next() const
virtual bool Verify(EX509ChainErr &e, x509ChainVerifyOpt_t *vopt=0)
void InsertAfter(XrdCryptoX509 *c, XrdCryptoX509 *cp)
bool CheckCA(bool checkselfsigned=1)
virtual ~XrdCryptoX509Chain()
virtual int CheckValidity(bool outatfirst=1, int when=0)
XrdCryptoX509ChainNode * end
XrdCryptoX509ChainNode * FindIssuer(const char *issuer, ESearchMode mode=kExact, XrdCryptoX509ChainNode **p=0)
XrdCryptoX509 * End() const
XrdCryptoX509ChainNode * FindSubject(const char *subject, ESearchMode mode=kExact, XrdCryptoX509ChainNode **p=0)
XrdCryptoX509ChainNode * begin
void Cleanup(bool keepCA=0)
void Remove(XrdCryptoX509 *c)
XrdCryptoX509 * SearchByIssuer(const char *issuer, ESearchMode mode=kExact)
void SetStatusCA(ECAStatus st)
ECAStatus StatusCA() const
XrdCryptoX509ChainNode * previous
XrdCryptoX509ChainNode * current
void PushBack(XrdCryptoX509 *c)
const char * X509ChainError(EX509ChainErr e)
XrdCryptoX509 * EffCA() const
const char * LastError() const
XrdCryptoX509 * SearchBySubject(const char *subject, ESearchMode mode=kExact)
void PutInFront(XrdCryptoX509 *c)
XrdCryptoX509ChainNode * effca
XrdCryptoX509ChainNode * Find(XrdCryptoX509 *c)
XrdCryptoX509Chain(XrdCryptoX509 *c=0)
const char * c_str() const