mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Merge remote-tracking branch 'origin/topic/vladg/gh-1084'
* origin/topic/vladg/gh-1084: Add btest for GH-1084 Update baselines MySQL: Fix parsing logic bug. We were correctly NOT expecting an EOF, but because we were parsing the header and then not parsing the rest, we would get out of sync
This commit is contained in:
commit
823d4e6220
7 changed files with 38 additions and 4 deletions
7
CHANGES
7
CHANGES
|
@ -1,4 +1,11 @@
|
||||||
|
|
||||||
|
3.2.0-dev.985 | 2020-07-24 11:40:22 -0700
|
||||||
|
|
||||||
|
* MySQL: Fix EOF parsing logic bug. (Vlad Grigorescu)
|
||||||
|
|
||||||
|
We were correctly NOT expecting an EOF, but because we were parsing the
|
||||||
|
header and then not parsing the rest, we would get out of sync
|
||||||
|
|
||||||
3.2.0-dev.979 | 2020-07-24 09:03:06 -0700
|
3.2.0-dev.979 | 2020-07-24 09:03:06 -0700
|
||||||
|
|
||||||
* Implement EDNS Client Subnet Option (Ron Wellman)
|
* Implement EDNS Client Subnet Option (Ron Wellman)
|
||||||
|
|
2
VERSION
2
VERSION
|
@ -1 +1 @@
|
||||||
3.2.0-dev.979
|
3.2.0-dev.985
|
||||||
|
|
|
@ -273,7 +273,7 @@ type Command_Response(pkt_len: uint32) = case $context.connection.get_expectatio
|
||||||
EXPECT_REST_OF_PACKET -> rest : bytestring &restofdata;
|
EXPECT_REST_OF_PACKET -> rest : bytestring &restofdata;
|
||||||
EXPECT_STATUS -> status : Command_Response_Status;
|
EXPECT_STATUS -> status : Command_Response_Status;
|
||||||
EXPECT_AUTH_SWITCH -> auth_switch : AuthSwitchRequest;
|
EXPECT_AUTH_SWITCH -> auth_switch : AuthSwitchRequest;
|
||||||
EXPECT_EOF -> eof : EOFIfLegacy;
|
EXPECT_EOF -> eof : EOFIfLegacy(pkt_len);
|
||||||
default -> unknown : empty;
|
default -> unknown : empty;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -333,9 +333,9 @@ type ColumnDefinitionOrEOF(pkt_len: uint32) = record {
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
type EOFIfLegacy = case $context.connection.get_deprecate_eof() of {
|
type EOFIfLegacy(pkt_len: uint32) = case $context.connection.get_deprecate_eof() of {
|
||||||
false -> eof: EOF_Packet;
|
false -> eof: EOF_Packet;
|
||||||
true -> none: empty;
|
true -> resultset: Resultset(pkt_len);
|
||||||
} &let {
|
} &let {
|
||||||
update_result_seen: bool = $context.connection.set_results_seen(0);
|
update_result_seen: bool = $context.connection.set_results_seen(0);
|
||||||
update_expectation: bool = $context.connection.set_next_expected(EXPECT_RESULTSET);
|
update_expectation: bool = $context.connection.set_next_expected(EXPECT_RESULTSET);
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
#separator \x09
|
||||||
|
#set_separator ,
|
||||||
|
#empty_field (empty)
|
||||||
|
#unset_field -
|
||||||
|
#path mysql
|
||||||
|
#open 2020-07-24-14-27-47
|
||||||
|
#fields ts uid id.orig_h id.orig_p id.resp_h id.resp_p cmd arg success rows response
|
||||||
|
#types time string addr port addr port string string bool count string
|
||||||
|
1595519112.556686 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 login root T 0 -
|
||||||
|
1595519112.570164 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 query select @@version_comment limit 1 T 0 -
|
||||||
|
1595519118.011034 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 query show databases T 0 -
|
||||||
|
1595519124.314569 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 query show tables from information_schema T 0 -
|
||||||
|
1595519133.500178 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 query show tables from mysql T 0 -
|
||||||
|
1595519139.608450 CHhAvVGS1DHFjwGM9 192.168.205.133 47752 47.98.114.44 3306 quit (empty) - - -
|
||||||
|
#close 2020-07-24-14-27-47
|
|
@ -1,21 +1,26 @@
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, select @@version_comment limit 1
|
mysql request, 3, select @@version_comment limit 1
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [Gentoo Linux mysql-5.0.54]
|
mysql result row, [Gentoo Linux mysql-5.0.54]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, SELECT DATABASE()
|
mysql request, 3, SELECT DATABASE()
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, []
|
mysql result row, []
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 2, test
|
mysql request, 2, test
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, show databases
|
mysql request, 3, show databases
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [information_schema]
|
mysql result row, [information_schema]
|
||||||
mysql result row, [test]
|
mysql result row, [test]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, show tables
|
mysql request, 3, show tables
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [agent]
|
mysql result row, [agent]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 4, agent\x00
|
mysql request, 4, agent\x00
|
||||||
|
@ -28,6 +33,7 @@ mysql request, 3, insert into foo (animal, name) values ("cat", "Garfield")
|
||||||
mysql ok, 1
|
mysql ok, 1
|
||||||
mysql request, 3, select * from foo
|
mysql request, 3, select * from foo
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [1, dog, Goofy]
|
mysql result row, [1, dog, Goofy]
|
||||||
mysql result row, [2, cat, Garfield]
|
mysql result row, [2, cat, Garfield]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
@ -37,10 +43,12 @@ mysql request, 3, delete from foo where id = 1
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, select count(*) from foo
|
mysql request, 3, select count(*) from foo
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [1]
|
mysql result row, [1]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, select * from foo
|
mysql request, 3, select * from foo
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
|
mysql ok, 0
|
||||||
mysql result row, [2, cat, Garfield]
|
mysql result row, [2, cat, Garfield]
|
||||||
mysql ok, 0
|
mysql ok, 0
|
||||||
mysql request, 3, delete from foo
|
mysql request, 3, delete from foo
|
||||||
|
|
BIN
testing/btest/Traces/mysql/selects_with_new_proto.trace
Normal file
BIN
testing/btest/Traces/mysql/selects_with_new_proto.trace
Normal file
Binary file not shown.
|
@ -0,0 +1,4 @@
|
||||||
|
# @TEST-EXEC: zeek -b -r $TRACES/mysql/selects_with_new_proto.trace %INPUT
|
||||||
|
# @TEST-EXEC: btest-diff mysql.log
|
||||||
|
|
||||||
|
@load base/protocols/mysql
|
Loading…
Add table
Add a link
Reference in a new issue