Inside Bitcoin
Opening the selected file…
Opening the selected file…
The code behind the network, with room to understand it.
Release published 2026-10-28 · Snapshot fetched 2026-11-01. Latest stable release at fetch time; development branches and Git history are excluded. Only the selected code window and visible folders load here.
1// Copyright (c) 2009-2010 Satoshi Nakamoto2// Copyright (c) 2009-present The Bitcoin Core developers3// Distributed under the MIT software license, see the accompanying4// file COPYING or http://www.opensource.org/licenses/mit-license.php.6#ifndef BITCOIN_SCRIPT_SCRIPT_ERROR_H7#define BITCOIN_SCRIPT_SCRIPT_ERROR_H9#include <string>11typedef enum ScriptError_t12{13SCRIPT_ERR_OK = 0,14SCRIPT_ERR_UNKNOWN_ERROR,15SCRIPT_ERR_EVAL_FALSE,16SCRIPT_ERR_OP_RETURN,17SCRIPT_ERR_SCRIPTNUM,19/* Max sizes */20SCRIPT_ERR_SCRIPT_SIZE,21SCRIPT_ERR_PUSH_SIZE,22SCRIPT_ERR_OP_COUNT,23SCRIPT_ERR_STACK_SIZE,24SCRIPT_ERR_SIG_COUNT,25SCRIPT_ERR_PUBKEY_COUNT,27/* Failed verify operations */28SCRIPT_ERR_VERIFY,29SCRIPT_ERR_EQUALVERIFY,30SCRIPT_ERR_CHECKMULTISIGVERIFY,31SCRIPT_ERR_CHECKSIGVERIFY,32SCRIPT_ERR_NUMEQUALVERIFY,34/* Logical/Format/Canonical errors */35SCRIPT_ERR_BAD_OPCODE,36SCRIPT_ERR_DISABLED_OPCODE,37SCRIPT_ERR_INVALID_STACK_OPERATION,38SCRIPT_ERR_INVALID_ALTSTACK_OPERATION,39SCRIPT_ERR_UNBALANCED_CONDITIONAL,41/* CHECKLOCKTIMEVERIFY and CHECKSEQUENCEVERIFY */42SCRIPT_ERR_NEGATIVE_LOCKTIME,43SCRIPT_ERR_UNSATISFIED_LOCKTIME,45/* Malleability */46SCRIPT_ERR_SIG_HASHTYPE,47SCRIPT_ERR_SIG_DER,48SCRIPT_ERR_MINIMALDATA,49SCRIPT_ERR_SIG_PUSHONLY,50SCRIPT_ERR_SIG_HIGH_S,51SCRIPT_ERR_SIG_NULLDUMMY,52SCRIPT_ERR_PUBKEYTYPE,53SCRIPT_ERR_CLEANSTACK,54SCRIPT_ERR_MINIMALIF,55SCRIPT_ERR_SIG_NULLFAIL,57/* softfork safeness */58SCRIPT_ERR_DISCOURAGE_UPGRADABLE_NOPS,59SCRIPT_ERR_DISCOURAGE_UPGRADABLE_WITNESS_PROGRAM,60SCRIPT_ERR_DISCOURAGE_UPGRADABLE_TAPROOT_VERSION,61SCRIPT_ERR_DISCOURAGE_OP_SUCCESS,62SCRIPT_ERR_DISCOURAGE_UPGRADABLE_PUBKEYTYPE,64/* segregated witness */65SCRIPT_ERR_WITNESS_PROGRAM_WRONG_LENGTH,66SCRIPT_ERR_WITNESS_PROGRAM_WITNESS_EMPTY,67SCRIPT_ERR_WITNESS_PROGRAM_MISMATCH,68SCRIPT_ERR_WITNESS_MALLEATED,69SCRIPT_ERR_WITNESS_MALLEATED_P2SH,70SCRIPT_ERR_WITNESS_UNEXPECTED,71SCRIPT_ERR_WITNESS_PUBKEYTYPE,73/* Taproot */74SCRIPT_ERR_SCHNORR_SIG_SIZE,75SCRIPT_ERR_SCHNORR_SIG_HASHTYPE,76SCRIPT_ERR_SCHNORR_SIG,77SCRIPT_ERR_TAPROOT_WRONG_CONTROL_SIZE,78SCRIPT_ERR_TAPSCRIPT_VALIDATION_WEIGHT,79SCRIPT_ERR_TAPSCRIPT_CHECKMULTISIG,80SCRIPT_ERR_TAPSCRIPT_MINIMALIF,81SCRIPT_ERR_TAPSCRIPT_EMPTY_PUBKEY,83/* Constant scriptCode */84SCRIPT_ERR_OP_CODESEPARATOR,85SCRIPT_ERR_SIG_FINDANDDELETE,87SCRIPT_ERR_ERROR_COUNT88} ScriptError;90std::string ScriptErrorString(ScriptError error);92#endif // BITCOIN_SCRIPT_SCRIPT_ERROR_H
Independent explanations by MyBitcoinExplorer. Not affiliated with or endorsed by Bitcoin Core. Guides are educational and do not replace the source or its tests.
Bitcoin Core source © its contributors, distributed under the MIT license. Original notices and bundled third-party licenses are retained in the source tree.