summaryrefslogtreecommitdiffstats
path: root/match.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2019-10-17 07:54:24 -0700
committerKaz Kylheku <kaz@kylheku.com>2019-10-17 07:54:24 -0700
commite61bfc41ed9d522b8f679e758fe79f20b326b76b (patch)
tree187f81f89351609fb940056b858d8424c0e35ad9 /match.h
parent24f59dc6fd38aeba9a10099c8b7a1243b18392a3 (diff)
downloadtxr-e61bfc41ed9d522b8f679e758fe79f20b326b76b.tar.gz
txr-e61bfc41ed9d522b8f679e758fe79f20b326b76b.tar.bz2
txr-e61bfc41ed9d522b8f679e758fe79f20b326b76b.zip
vm: prevent overflow of fixparam field in function.
Functions can only have 127 fixed parameters; some code ignores this when assigning to the bitfield. * lib.h (FIXPARAM_BITS, FIXPARAM_MAX): New preprocessor symbols. (struct func): Use FIXPARAM_BITS for defining fixparam and optargs bitfields instead of hard-coded 7. * lib.c (func_vm): Sanity check the fixparam and reqags parameters: 0 <= reqargs <= fixparam <= FIXPARAM_MAX.
Diffstat (limited to 'match.h')
0 files changed, 0 insertions, 0 deletions