diff options
Diffstat (limited to 'src/keystore.h')
-rw-r--r-- | src/keystore.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/keystore.h b/src/keystore.h index ff5613f617..fa912cb195 100644 --- a/src/keystore.h +++ b/src/keystore.h @@ -18,13 +18,9 @@ /** A virtual base class for key stores */ class CKeyStore : public SigningProvider { -protected: - mutable CCriticalSection cs_KeyStore; - public: //! Add a key to the store. virtual bool AddKeyPubKey(const CKey &key, const CPubKey &pubkey) =0; - virtual bool AddKey(const CKey &key); //! Check whether a key corresponding to a given address is present in the store. virtual bool HaveKey(const CKeyID &address) const =0; @@ -51,6 +47,8 @@ typedef std::set<CScript> WatchOnlySet; class CBasicKeyStore : public CKeyStore { protected: + mutable CCriticalSection cs_KeyStore; + KeyMap mapKeys; WatchKeyMap mapWatchKeys; ScriptMap mapScripts; @@ -60,6 +58,7 @@ protected: public: bool AddKeyPubKey(const CKey& key, const CPubKey &pubkey) override; + bool AddKey(const CKey &key) { return AddKeyPubKey(key, key.GetPubKey()); } bool GetPubKey(const CKeyID &address, CPubKey& vchPubKeyOut) const override; bool HaveKey(const CKeyID &address) const override; std::set<CKeyID> GetKeys() const override; |