zeek/testing
Arne Welzel 672602dae7 MySQL: Fix endianness, introduce mysql_eof() event
We were parsing MySQL using bigendian even though the protocol is
specified as with "least significant byte first" [1]. This is most
problematic when parsing length encoded strings with 2 byte length
fields...

Further, I think, the EOF_Packet parsing was borked, either due to
testing the CLIENT_DEPRECATE_EOF with the wrong endianness, or due to
the workaround in Resultset processing raising mysql_ok(). Introduce a
new mysql_eof() that triggers for EOF_Packet's and remove the fake
mysql_ok() Resultset invocation to fix. Adapt the mysql script and tests
to account for the new event.

This is a quite backwards incompatible change on the event level, but
due to being quite buggy in general, doubt this matters to many.

I think there is more buried, but this fixes the violation of the simple
"SHOW ENGINE INNODB STATUS" and the existing tests continue to
succeed...

[1] https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_basic_dt_integers.html
2023-01-27 10:59:23 +01:00
..
benchmark/broker Port Zeek to latest Broker API 2022-04-27 23:02:27 +02:00
btest MySQL: Fix endianness, introduce mysql_eof() event 2023-01-27 10:59:23 +01:00
coverage Spelling testing 2022-11-16 20:05:03 -05:00
external Update external testing repo commit hashes for Teredo changes 2023-01-26 09:23:22 -07:00
scripts Fix diff-remove-abspath to ignore Windows drive letters 2023-01-19 09:13:33 -07:00
.gitignore
CMakeLists.txt Install Zeek's btest tooling with the distribution 2021-03-11 13:00:15 -08:00
Makefile
README More bro-to-zeek renaming in the unit tests 2019-05-16 02:27:54 -05:00

This directory contains suites for testing for Zeek's correct
operation:

    btest/
        An ever-growing set of small unit tests testing Zeek's
        functionality.

    external/
        A framework for downloading additional test sets that run more
        complex Zeek configuration on larger traces files. Due to their
        size, these are not included directly. See the README for more
        information. 

    scripts/
        Helpers scripts used by some tests.