#include <XrdSutCache.hh>
Public Member Functions | |
XrdSutCache () | |
virtual | ~XrdSutCache () |
int | Entries () const |
bool | Empty () const |
int | Init (int capacity=100) |
int | Reset (int newsz=-1) |
int | Load (const char *pfname) |
int | Flush (const char *pfname=0) |
int | Refresh () |
int | Rehash (bool force=0) |
void | SetLifetime (int lifet=300) |
XrdSutPFEntry * | Get (int i) const |
XrdSutPFEntry * | Get (const char *ID, bool *wild=0) |
XrdSutPFEntry * | Add (const char *ID, bool force=0) |
bool | Remove (const char *ID, int opt=1) |
int | Trim (int lifet=0) |
void | Dump (const char *msg=0) |
Private Attributes | |
int | cachesz |
int | cachemx |
XrdSutPFEntry ** | cachent |
kXR_int32 | utime |
int | lifetime |
XrdOucHash< kXR_int32 > | hashtable |
kXR_int32 | htmtime |
XrdOucString | pfile |
Definition at line 25 of file XrdSutCache.hh.
XrdSutCache::XrdSutCache | ( | ) | [inline] |
XrdSutCache::~XrdSutCache | ( | ) | [virtual] |
int XrdSutCache::Entries | ( | ) | const [inline] |
bool XrdSutCache::Empty | ( | ) | const [inline] |
Definition at line 44 of file XrdSutCache.hh.
References cachemx.
Referenced by XrdSecProtocolgsi::Init(), and XrdSecProtocolgsi::LoadGMAP().
int XrdSutCache::Init | ( | int | capacity = 100 |
) |
Definition at line 51 of file XrdSutCache.cc.
References cachent, cachesz, DEBUG, EPNAME, Rehash(), and utime.
Referenced by XrdSecProtocolgsi::Init(), XrdSecProtocolpwd::Init(), Load(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), and Reset().
int XrdSutCache::Reset | ( | int | newsz = -1 |
) |
Definition at line 323 of file XrdSutCache.cc.
References cachemx, cachent, cachesz, i, and Init().
Referenced by XrdSecProtocolgsi::Init(), Load(), and XrdSecProtocolgsi::LoadGMAP().
int XrdSutCache::Load | ( | const char * | pfname | ) |
Definition at line 393 of file XrdSutCache.cc.
References cachemx, cachent, XrdSutPFile::Close(), DEBUG, XrdSutPFEntInd::entofs, XrdSutPFHeader::entries, EPNAME, XrdSutPFHeader::indofs, Init(), XrdSutPFile::IsValid(), kPFEopen, XrdSutPFile::LastErrStr(), XrdSutPFEntInd::name, XrdSutPFEntInd::nxtofs, pfile, XrdSutPFile::ReadEnt(), XrdSutPFile::ReadHeader(), XrdSutPFile::ReadInd(), Rehash(), Reset(), XrdSutPFEntry::SetName(), stat, and utime.
Referenced by XrdSecProtocolpwd::Init(), and Refresh().
int XrdSutCache::Flush | ( | const char * | pfname = 0 |
) |
Definition at line 553 of file XrdSutCache.cc.
References XrdOucString::c_str(), cachemx, cachent, XrdSutPFile::Close(), DEBUG, EPNAME, i, XrdSutPFile::IsValid(), kPFEcreate, kPFEopen, XrdSutPFile::LastErrStr(), XrdOucString::length(), XrdSutPFEntry::mtime, XrdSutPFEntry::name, pfile, XrdSutPFile::ReadEntry(), utime, and XrdSutPFile::WriteEntry().
Referenced by XrdSecProtocolpwd::Authenticate(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::SaveCreds(), and XrdSecProtocolpwd::UpdateAlog().
int XrdSutCache::Refresh | ( | ) |
Definition at line 618 of file XrdSutCache.cc.
References XrdOucString::c_str(), DEBUG, EPNAME, XrdOucString::length(), Load(), pfile, stat, and utime.
Referenced by XrdSecProtocolpwd::QueryCreds(), and XrdSecProtocolpwd::QueryUser().
int XrdSutCache::Rehash | ( | bool | force = 0 |
) |
Definition at line 518 of file XrdSutCache.cc.
References cachemx, cachent, DEBUG, Dump(), EPNAME, htmtime, i, name, TRACE, and utime.
Referenced by Add(), Get(), XrdSecProtocolgsi::GetCA(), Init(), XrdSecProtocolgsi::Init(), Load(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), and Remove().
void XrdSutCache::SetLifetime | ( | int | lifet = 300 |
) | [inline] |
XrdSutPFEntry* XrdSutCache::Get | ( | int | i | ) | const [inline] |
Definition at line 56 of file XrdSutCache.hh.
References cachemx, and cachent.
Referenced by Add(), XrdSecProtocolgsi::GetCA(), XrdSecProtocolpwd::Init(), XrdCryptosslX509Crl::IsRevoked(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::QueryCreds(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolpwd::QueryUser(), and XrdSecProtocolgsi::ServerDoCertreq().
XrdSutPFEntry * XrdSutCache::Get | ( | const char * | ID, | |
bool * | wild = 0 | |||
) |
Definition at line 83 of file XrdSutCache.cc.
References cachemx, cachent, cachesz, DEBUG, Dump(), EPNAME, i, match(), XrdOucString::matches(), XrdSutPFEntry::name, Rehash(), and TRACE.
XrdSutPFEntry * XrdSutCache::Add | ( | const char * | ID, | |
bool | force = 0 | |||
) |
Definition at line 137 of file XrdSutCache.cc.
References cachemx, cachent, cachesz, DEBUG, EPNAME, Get(), i, Rehash(), and utime.
Referenced by XrdSecProtocolgsi::GetCA(), XrdSecProtocolgsi::Init(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::QueryCreds(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolpwd::QueryUser(), and XrdSecProtocolpwd::SaveCreds().
bool XrdSutCache::Remove | ( | const char * | ID, | |
int | opt = 1 | |||
) |
int XrdSutCache::Trim | ( | int | lifet = 0 |
) |
void XrdSutCache::Dump | ( | const char * | msg = 0 |
) |
Definition at line 352 of file XrdSutCache.cc.
References XrdSutPFEntry::buf1, XrdSutPFEntry::buf2, XrdSutPFEntry::buf3, XrdSutPFEntry::buf4, cachemx, cachent, cachesz, XrdSutPFEntry::cnt, EPNAME, i, XrdSutPFBuf::len, XrdSutPFEntry::mtime, XrdSutPFEntry::name, PRINT, XrdSutPFEntry::status, and XrdSutTimeString().
Referenced by Get(), XrdSecProtocolpwd::Init(), XrdSecProtocolgsi::Init(), and Rehash().
int XrdSutCache::cachesz [private] |
Definition at line 28 of file XrdSutCache.hh.
Referenced by Add(), Dump(), Get(), Init(), Remove(), Reset(), and XrdSutCache().
int XrdSutCache::cachemx [private] |
Definition at line 29 of file XrdSutCache.hh.
Referenced by Add(), Dump(), Empty(), Entries(), Flush(), Get(), Load(), Rehash(), Remove(), Reset(), Trim(), XrdSutCache(), and ~XrdSutCache().
XrdSutPFEntry** XrdSutCache::cachent [private] |
Definition at line 30 of file XrdSutCache.hh.
Referenced by Add(), Dump(), Flush(), Get(), Init(), Load(), Rehash(), Remove(), Reset(), Trim(), XrdSutCache(), and ~XrdSutCache().
kXR_int32 XrdSutCache::utime [private] |
Definition at line 31 of file XrdSutCache.hh.
Referenced by Add(), Flush(), Init(), Load(), Refresh(), Rehash(), Remove(), and XrdSutCache().
int XrdSutCache::lifetime [private] |
Definition at line 32 of file XrdSutCache.hh.
Referenced by SetLifetime(), Trim(), and XrdSutCache().
XrdOucHash<kXR_int32> XrdSutCache::hashtable [private] |
Definition at line 33 of file XrdSutCache.hh.
kXR_int32 XrdSutCache::htmtime [private] |
XrdOucString XrdSutCache::pfile [private] |
Definition at line 35 of file XrdSutCache.hh.
Referenced by Flush(), Load(), Refresh(), and XrdSutCache().