Browse Source

Merge #10313: [Consensus] Add constant for maximum stack size

cb184b3 Add constant for maximum stack size (Gregory Sanders)

Tree-SHA512: 0ec4a28552a6eee7fba8c69278f63c61f095e4ba06cb34456bd0162cd702370d10cca621ae1797a0d5e62fb39814cbb8245d3a7adc007ca39dab7a49cbc925dc
0.15
Pieter Wuille 8 years ago
parent
commit
4cb8757aae
No known key found for this signature in database
GPG Key ID: A636E97631F767E0
  1. 2
      src/script/interpreter.cpp
  2. 3
      src/script/script.h

2
src/script/interpreter.cpp

@ -1028,7 +1028,7 @@ bool EvalScript(std::vector<std::vector<unsigned char> >& stack, const CScript&
} }
// Size limits // Size limits
if (stack.size() + altstack.size() > 1000) if (stack.size() + altstack.size() > MAX_STACK_SIZE)
return set_error(serror, SCRIPT_ERR_STACK_SIZE); return set_error(serror, SCRIPT_ERR_STACK_SIZE);
} }
} }

3
src/script/script.h

@ -30,6 +30,9 @@ static const int MAX_PUBKEYS_PER_MULTISIG = 20;
// Maximum script length in bytes // Maximum script length in bytes
static const int MAX_SCRIPT_SIZE = 10000; static const int MAX_SCRIPT_SIZE = 10000;
// Maximum number of values on script interpreter stack
static const int MAX_STACK_SIZE = 1000;
// Threshold for nLockTime: below this value it is interpreted as block number, // Threshold for nLockTime: below this value it is interpreted as block number,
// otherwise as UNIX timestamp. // otherwise as UNIX timestamp.
static const unsigned int LOCKTIME_THRESHOLD = 500000000; // Tue Nov 5 00:53:20 1985 UTC static const unsigned int LOCKTIME_THRESHOLD = 500000000; // Tue Nov 5 00:53:20 1985 UTC

Loading…
Cancel
Save