mirror of
https://github.com/zeek/zeek.git
synced 2025-10-06 00:28:21 +00:00
Remove byte count parameter from modbus events carrying register arrays
Instead of these events being generated for invalid byte count values (they should always be even, not odd), a protocol_violation is raised. modbus_read_holding_registers_response modbus_read_input_registers_response modbus_write_multiple_registers_request modbus_read_write_multiple_registers_request modbus_read_write_multiple_registers_response modbus_read_fifo_queue_respons
This commit is contained in:
parent
c911d03c30
commit
fd5eb23fa6
6 changed files with 64 additions and 38 deletions
|
@ -6,15 +6,16 @@
|
|||
# of register values, with the quantity being derived from a byte count value
|
||||
# that is also sent. If the byte count value is invalid (e.g. an odd value
|
||||
# might not be valid since registers must be 2-byte values), then the parser
|
||||
# should not trigger any asserts, but the resulting event could indicate
|
||||
# the strangeness (i.e. byte_count != 2*|registers|).
|
||||
# should not trigger any asserts, but generate a protocol_violation (in this
|
||||
# case TCP_ApplicationAnalyzer::ProtocolViolation asserts its behavior for
|
||||
# incomplete connections).
|
||||
|
||||
event modbus_read_input_registers_request(c: connection, headers: ModbusHeaders, start_address: count, quantity: count)
|
||||
{
|
||||
print "modbus_read_input_registers_request", c$id, headers, start_address, quantity;
|
||||
}
|
||||
|
||||
event modbus_read_input_registers_response(c: connection, headers: ModbusHeaders, byte_count: count, registers: ModbusRegisters)
|
||||
event modbus_read_input_registers_response(c: connection, headers: ModbusHeaders, registers: ModbusRegisters)
|
||||
{
|
||||
print "modbus_read_input_registers_response", c$id, headers, registers, |registers|, byte_count;
|
||||
print "modbus_read_input_registers_response", c$id, headers, registers, |registers|;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue