diff options
Diffstat (limited to 'src/keystore.h')
-rw-r--r-- | src/keystore.h | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/src/keystore.h b/src/keystore.h deleted file mode 100644 index 98209d4a43..0000000000 --- a/src/keystore.h +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2009-2010 Satoshi Nakamoto -// Copyright (c) 2009-2018 The Bitcoin Core developers -// Distributed under the MIT software license, see the accompanying -// file COPYING or http://www.opensource.org/licenses/mit-license.php. - -#ifndef BITCOIN_KEYSTORE_H -#define BITCOIN_KEYSTORE_H - -#include <key.h> -#include <pubkey.h> -#include <script/script.h> -#include <script/sign.h> -#include <script/standard.h> -#include <sync.h> - -#include <boost/signals2/signal.hpp> - -/** Basic key store, that keeps keys in an address->secret map */ -class FillableSigningProvider : public SigningProvider -{ -protected: - mutable CCriticalSection cs_KeyStore; - - using KeyMap = std::map<CKeyID, CKey>; - using WatchKeyMap = std::map<CKeyID, CPubKey>; - using ScriptMap = std::map<CScriptID, CScript>; - using WatchOnlySet = std::set<CScript>; - - KeyMap mapKeys GUARDED_BY(cs_KeyStore); - WatchKeyMap mapWatchKeys GUARDED_BY(cs_KeyStore); - ScriptMap mapScripts GUARDED_BY(cs_KeyStore); - WatchOnlySet setWatchOnly GUARDED_BY(cs_KeyStore); - - void ImplicitlyLearnRelatedKeyScripts(const CPubKey& pubkey) EXCLUSIVE_LOCKS_REQUIRED(cs_KeyStore); - -public: - virtual bool AddKeyPubKey(const CKey& key, const CPubKey &pubkey); - virtual bool AddKey(const CKey &key) { return AddKeyPubKey(key, key.GetPubKey()); } - virtual bool GetPubKey(const CKeyID &address, CPubKey& vchPubKeyOut) const override; - virtual bool HaveKey(const CKeyID &address) const override; - virtual std::set<CKeyID> GetKeys() const; - virtual bool GetKey(const CKeyID &address, CKey &keyOut) const override; - virtual bool AddCScript(const CScript& redeemScript); - virtual bool HaveCScript(const CScriptID &hash) const override; - virtual std::set<CScriptID> GetCScripts() const; - virtual bool GetCScript(const CScriptID &hash, CScript& redeemScriptOut) const override; - - virtual bool AddWatchOnly(const CScript &dest); - virtual bool RemoveWatchOnly(const CScript &dest); - virtual bool HaveWatchOnly(const CScript &dest) const; - virtual bool HaveWatchOnly() const; -}; - -/** Return the CKeyID of the key involved in a script (if there is a unique one). */ -CKeyID GetKeyForDestination(const FillableSigningProvider& store, const CTxDestination& dest); - -#endif // BITCOIN_KEYSTORE_H |