diff --git a/passphrase_cache.cc b/passphrase_cache.cc index d13973a..41bfeda 100644 --- a/passphrase_cache.cc +++ b/passphrase_cache.cc @@ -1,6 +1,22 @@ #include "passphrase_cache.hh" namespace pEp { + PassphraseCache::PassphraseCache(int max_size, duration timeout) : + _max_size(max_size), _timeout(timeout), _which(_cache.end()) + { } + + PassphraseCache::PassphraseCache(const PassphraseCache& second) : + _cache(second._cache), _max_size(second._max_size), + _timeout(second._timeout), _which(_cache.end()) + { + cleanup(); + } + + PassphraseCache PassphraseCache::operator=(const PassphraseCache& second) + { + return second; + } + const char *PassphraseCache::add(std::string passphrase) { std::lock_guard lock(_mtx); diff --git a/passphrase_cache.hh b/passphrase_cache.hh index 91f80ea..2b7d0c8 100644 --- a/passphrase_cache.hh +++ b/passphrase_cache.hh @@ -40,13 +40,10 @@ namespace pEp { }; PassphraseCache(int max_size=20, duration timeout = - std::chrono::minutes(10)) : _max_size(max_size), - _timeout(timeout), _which(_cache.end()) { } + std::chrono::minutes(10)); ~PassphraseCache() { } - PassphraseCache(const PassphraseCache& second) : _cache(second._cache), - _max_size(second._max_size), _timeout(second._timeout), - _which(_cache.end()) { } - PassphraseCache operator=(const PassphraseCache& second) { return second; } + PassphraseCache(const PassphraseCache& second); + PassphraseCache operator=(const PassphraseCache& second); // adding a passphrase to the cache, which will timeout