#include "passphrase_cache.hh" namespace pEp { template PEP_STATUS PassphraseCache::api( PEP_STATUS f(PEP_SESSION, A...), PEP_SESSION session, A... a) { PEP_STATUS status; for_each_passphrase([&](std::string passphrase) { status = ::config_passphrase(session, passphrase.c_str()); if (status) return true; status = f(session, a...); return status != PEP_PASSPHRASE_REQUIRED && status != PEP_WRONG_PASSPHRASE; }); return status; } };