davidgiven / ack

The Amsterdam Compiler Kit
http://tack.sf.net
Other
420 stars 59 forks source link

[bug] interpreter will do an out of bounds memory read on executing set instruction with invalid bit number #202

Open ccodere opened 5 years ago

ccodere commented 5 years ago

When the ESET trap is ignored through SIM and the SET instruction is executed with a bitnumber out of range, then the EM interpreter might read in memory outside of its range, leading to an out of bounds read.

This has been fixed by making sure that the memory read is not executed if the bitnumber is out of bounds of the set.