diff --git a/src/test/scriptflags.cpp b/src/test/scriptflags.cpp index 4e4d0ba31..4420b9b74 100644 --- a/src/test/scriptflags.cpp +++ b/src/test/scriptflags.cpp @@ -1,68 +1,70 @@ // Copyright (c) 2017 The Bitcoin developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include "test/scriptflags.h" #include "script/interpreter.h" #include #include #include #include #include -static std::map mapFlagNames = { +static std::map mapFlagNames = { {"NONE", SCRIPT_VERIFY_NONE}, {"P2SH", SCRIPT_VERIFY_P2SH}, {"STRICTENC", SCRIPT_VERIFY_STRICTENC}, {"DERSIG", SCRIPT_VERIFY_DERSIG}, {"LOW_S", SCRIPT_VERIFY_LOW_S}, {"SIGPUSHONLY", SCRIPT_VERIFY_SIGPUSHONLY}, {"MINIMALDATA", SCRIPT_VERIFY_MINIMALDATA}, {"NULLDUMMY", SCRIPT_VERIFY_NULLDUMMY}, {"DISCOURAGE_UPGRADABLE_NOPS", SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_NOPS}, {"CLEANSTACK", SCRIPT_VERIFY_CLEANSTACK}, {"MINIMALIF", SCRIPT_VERIFY_MINIMALIF}, {"NULLFAIL", SCRIPT_VERIFY_NULLFAIL}, {"CHECKLOCKTIMEVERIFY", SCRIPT_VERIFY_CHECKLOCKTIMEVERIFY}, {"CHECKSEQUENCEVERIFY", SCRIPT_VERIFY_CHECKSEQUENCEVERIFY}, {"DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM", SCRIPT_VERIFY_DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM}, {"COMPRESSED_PUBKEYTYPE", SCRIPT_VERIFY_COMPRESSED_PUBKEYTYPE}, {"SIGHASH_FORKID", SCRIPT_ENABLE_SIGHASH_FORKID}, }; -unsigned int ParseScriptFlags(std::string strFlags) { +uint32_t ParseScriptFlags(std::string strFlags) { if (strFlags.empty()) { return 0; } - unsigned int flags = 0; + + uint32_t flags = 0; std::vector words; boost::algorithm::split(words, strFlags, boost::algorithm::is_any_of(",")); for (std::string &word : words) { if (!mapFlagNames.count(word)) BOOST_ERROR("Bad test: unknown verification flag '" << word << "'"); flags |= mapFlagNames[word]; } return flags; } -std::string FormatScriptFlags(unsigned int flags) { +std::string FormatScriptFlags(uint32_t flags) { if (flags == 0) { return ""; } + std::string ret; - std::map::const_iterator it = - mapFlagNames.begin(); + std::map::const_iterator it = mapFlagNames.begin(); while (it != mapFlagNames.end()) { if (flags & it->second) { ret += it->first + ","; } it++; } + return ret.substr(0, ret.size() - 1); } diff --git a/src/test/scriptflags.h b/src/test/scriptflags.h index 0356f3a0b..ccce5ce4f 100644 --- a/src/test/scriptflags.h +++ b/src/test/scriptflags.h @@ -1,13 +1,13 @@ // Copyright (c) 2017 The Bitcoin developers // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #ifndef BITCOIN_TEST_SCRIPTFLAGS_H #define BITCOIN_TEST_SCRIPTFLAGS_H #include -unsigned int ParseScriptFlags(std::string strFlags); -std::string FormatScriptFlags(unsigned int flags); +uint32_t ParseScriptFlags(std::string strFlags); +std::string FormatScriptFlags(uint32_t flags); #endif // BITCOIN_TEST_SCRIPTFLAGS_H