diff --git a/src/core_io.h b/src/core_io.h index 365a3b9cc..8c20a6591 100644 --- a/src/core_io.h +++ b/src/core_io.h @@ -1,39 +1,44 @@ // Copyright (c) 2009-2016 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_CORE_IO_H #define BITCOIN_CORE_IO_H #include #include struct Amount; class CBlock; class CBlockHeader; class CMutableTransaction; class CScript; class CTransaction; +struct PartiallySignedTransaction; class uint256; class UniValue; // core_read.cpp CScript ParseScript(const std::string &s); std::string ScriptToAsmStr(const CScript &script, const bool fAttemptSighashDecode = false); bool DecodeHexTx(CMutableTransaction &tx, const std::string &strHexTx); bool DecodeHexBlk(CBlock &, const std::string &strHexBlk); bool DecodeHexBlockHeader(CBlockHeader &, const std::string &hex_header); uint256 ParseHashStr(const std::string &, const std::string &strName); std::vector ParseHexUV(const UniValue &v, const std::string &strName); +bool DecodePSBT(PartiallySignedTransaction &psbt, const std::string &base64_tx, + std::string &error); // core_write.cpp UniValue ValueFromAmount(const Amount &amount); std::string FormatScript(const CScript &script); std::string EncodeHexTx(const CTransaction &tx, const int serializeFlags = 0); +std::string SighashToStr(uint8_t sighash_type); void ScriptPubKeyToUniv(const CScript &scriptPubKey, UniValue &out, bool fIncludeHex); +void ScriptToUniv(const CScript &script, UniValue &out, bool include_address); void TxToUniv(const CTransaction &tx, const uint256 &hashBlock, UniValue &entry, bool include_hex = true, int serialize_flags = 0); #endif // BITCOIN_CORE_IO_H diff --git a/src/core_read.cpp b/src/core_read.cpp index 6872c1145..c95d80531 100644 --- a/src/core_read.cpp +++ b/src/core_read.cpp @@ -1,280 +1,298 @@ // Copyright (c) 2009-2016 The Bitcoin Core developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include #include #include #include