aboutsummaryrefslogtreecommitdiff
path: root/src/script/ismine.h
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2016-04-18 15:12:46 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2016-04-18 15:14:36 +0200
commita25a4f5b04c3e045557e9e7e807b2af74ad75128 (patch)
tree5a5726a68759ab6ed0ed9e7b189dd622c6ff9b23 /src/script/ismine.h
parentf4eae2d910d9edb3750efec4facbeab161cce593 (diff)
wallet_ismine.h → script/ismine.h
Removes conditional dependency of `src/test` on wallet. Makes multisig and P2SH tests complete without wallet built-in.
Diffstat (limited to 'src/script/ismine.h')
-rw-r--r--src/script/ismine.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/script/ismine.h b/src/script/ismine.h
new file mode 100644
index 0000000000..4b7db8802b
--- /dev/null
+++ b/src/script/ismine.h
@@ -0,0 +1,34 @@
+// Copyright (c) 2009-2010 Satoshi Nakamoto
+// Copyright (c) 2009-2015 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_SCRIPT_ISMINE_H
+#define BITCOIN_SCRIPT_ISMINE_H
+
+#include "script/standard.h"
+
+#include <stdint.h>
+
+class CKeyStore;
+class CScript;
+
+/** IsMine() return codes */
+enum isminetype
+{
+ ISMINE_NO = 0,
+ //! Indicates that we don't know how to create a scriptSig that would solve this if we were given the appropriate private keys
+ ISMINE_WATCH_UNSOLVABLE = 1,
+ //! Indicates that we know how to create a scriptSig that would solve this if we were given the appropriate private keys
+ ISMINE_WATCH_SOLVABLE = 2,
+ ISMINE_WATCH_ONLY = ISMINE_WATCH_SOLVABLE | ISMINE_WATCH_UNSOLVABLE,
+ ISMINE_SPENDABLE = 4,
+ ISMINE_ALL = ISMINE_WATCH_ONLY | ISMINE_SPENDABLE
+};
+/** used for bitflags of isminetype */
+typedef uint8_t isminefilter;
+
+isminetype IsMine(const CKeyStore& keystore, const CScript& scriptPubKey);
+isminetype IsMine(const CKeyStore& keystore, const CTxDestination& dest);
+
+#endif // BITCOIN_SCRIPT_ISMINE_H