aboutsummaryrefslogtreecommitdiff
path: root/src/script
diff options
context:
space:
mode:
authorGregory Sanders <gsanders87@gmail.com>2017-05-02 10:55:06 -0400
committerGregory Sanders <gsanders87@gmail.com>2017-05-02 13:37:41 -0400
commitcb184b3a544df7bcc7695ad3b54ed9d196c1650e (patch)
tree5c53eceecb99f350184b4fc25d85da41a3d3c2cd /src/script
parenta3e756b7d61010654abe5cd4694b3f356a8b4606 (diff)
Add constant for maximum stack size
Diffstat (limited to 'src/script')
-rw-r--r--src/script/interpreter.cpp2
-rw-r--r--src/script/script.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/script/interpreter.cpp b/src/script/interpreter.cpp
index f4e5313a78..e9784fef94 100644
--- a/src/script/interpreter.cpp
+++ b/src/script/interpreter.cpp
@@ -1028,7 +1028,7 @@ bool EvalScript(std::vector<std::vector<unsigned char> >& stack, const CScript&
}
// Size limits
- if (stack.size() + altstack.size() > 1000)
+ if (stack.size() + altstack.size() > MAX_STACK_SIZE)
return set_error(serror, SCRIPT_ERR_STACK_SIZE);
}
}
diff --git a/src/script/script.h b/src/script/script.h
index d7aaa04f80..95a5999a13 100644
--- a/src/script/script.h
+++ b/src/script/script.h
@@ -30,6 +30,9 @@ static const int MAX_PUBKEYS_PER_MULTISIG = 20;
// Maximum script length in bytes
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,
// otherwise as UNIX timestamp.
static const unsigned int LOCKTIME_THRESHOLD = 500000000; // Tue Nov 5 00:53:20 1985 UTC