mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 06:38:20 +00:00

* alphabet * another * associated * avoiding * base * because * constructors * defining * deterministic * directly * endlessly * entity * function * indefinitely * initial * interpreter * into * modifying * negotiate * nonexistent * observations * occasional * omission * orphaned * overridden * passing * primitive * produces * reassembly * repository * restore * shouldn't * something * statement * the * therefore * transferred * uninitialized * unsuccessful Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
14 lines
675 B
Text
14 lines
675 B
Text
# The parser generated by BinPAC needs to handle this pcap without crashing
|
|
# or asserting. Specifically, passing Function Code 23,
|
|
# ReadWriteMultipleRegistersRequest, has a field:
|
|
#
|
|
# uint16[write_quantity] &length=write_byte_count;
|
|
#
|
|
# And the pcap has mismatching values for those quantities.
|
|
# The use of &length on arrays previously caused array elements to
|
|
# be treated as already having a bounds check in the parsing-loop, which
|
|
# is problematic in the case where (write_quantity * 2) > write_byte_count
|
|
# as that can cause reading from a location that exceeds the end of the
|
|
# data buffer.
|
|
|
|
# @TEST-EXEC: zeek -r $TRACES/modbus/4SICS-GeekLounge-151022-min.pcap
|