Self-register new User objects into the cache.
namespace Auth {
+CBDATA_CLASS_INIT(UserNameCache);
+
UserNameCache::UserNameCache(const char *name) :
cachename(name), cacheCleanupEventName("User cache cleanup: ")
{
passwd(NULL),
queue(NULL),
currentRequest(NULL)
-{}
+{
+ Cache()->insert(Pointer(this));
+}
Auth::Basic::User::~User()
{
CbcPointer<Auth::UserNameCache>
Auth::Basic::User::Cache()
{
- static Auth::UserNameCache cache("basic");
- static CbcPointer<Auth::UserNameCache> p(&cache);
+ static CbcPointer<Auth::UserNameCache> p(new Auth::UserNameCache("basic"));
return p;
}
HA1created(0)
{
memset(HA1, 0, sizeof(HA1));
+ Cache()->insert(Pointer(this));
}
Auth::Digest::User::~User()
CbcPointer<Auth::UserNameCache>
Auth::Digest::User::Cache()
{
- static Auth::UserNameCache cache("digest");
- static CbcPointer<Auth::UserNameCache> p(&cache);
+ static CbcPointer<Auth::UserNameCache> p(new Auth::UserNameCache("digest"));
return p;
}
Auth::Negotiate::User::User(Auth::Config *aConfig, const char *aRequestRealm) :
Auth::User(aConfig, aRequestRealm)
{
+ Cache()->insert(Pointer(this));
}
Auth::Negotiate::User::~User()
CbcPointer<Auth::UserNameCache>
Auth::Negotiate::User::Cache()
{
- static Auth::UserNameCache cache("negotiate");
- static CbcPointer<Auth::UserNameCache> p(&cache);
+ static CbcPointer<Auth::UserNameCache> p(new Auth::UserNameCache("negotiate"));
return p;
}
Auth::Ntlm::User::User(Auth::Config *aConfig, const char *aRequestRealm) :
Auth::User(aConfig, aRequestRealm)
{
+ Cache()->insert(Pointer(this));
}
Auth::Ntlm::User::~User()
CbcPointer<Auth::UserNameCache>
Auth::Ntlm::User::Cache()
{
- static Auth::UserNameCache cache("ntlm");
- static CbcPointer<Auth::UserNameCache> p(&cache);
+ static CbcPointer<Auth::UserNameCache> p(new Auth::UserNameCache("basic"));
return p;
}