diff --git a/src/analyzer/protocol/mysql/mysql-analyzer.pac b/src/analyzer/protocol/mysql/mysql-analyzer.pac index 24401c110e..06b637aa5d 100644 --- a/src/analyzer/protocol/mysql/mysql-analyzer.pac +++ b/src/analyzer/protocol/mysql/mysql-analyzer.pac @@ -7,12 +7,12 @@ refine flow MySQL_Flow += { { if ( ${msg.version} == 10 ) BifEvent::generate_mysql_server_version(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - bytestring_to_val(${msg.handshake10.server_version})); + connection()->bro_analyzer()->Conn(), + new StringVal(c_str(${msg.handshake10.server_version}))); if ( ${msg.version} == 9 ) BifEvent::generate_mysql_server_version(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - bytestring_to_val(${msg.handshake9.server_version})); + connection()->bro_analyzer()->Conn(), + new StringVal(c_str(${msg.handshake9.server_version}))); } return true; %} @@ -26,12 +26,12 @@ refine flow MySQL_Flow += { { if ( ${msg.version} == 10 ) BifEvent::generate_mysql_handshake(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - bytestring_to_val(${msg.v10_response.username})); + connection()->bro_analyzer()->Conn(), + new StringVal(c_str(${msg.v10_response.username}))); if ( ${msg.version} == 9 ) BifEvent::generate_mysql_handshake(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - bytestring_to_val(${msg.v9_response.username})); + connection()->bro_analyzer()->Conn(), + new StringVal(c_str(${msg.v9_response.username}))); } return true; %} @@ -40,9 +40,9 @@ refine flow MySQL_Flow += { %{ if ( mysql_command_request ) BifEvent::generate_mysql_command_request(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - ${msg.command}, - bytestring_to_val(${msg.arg})); + connection()->bro_analyzer()->Conn(), + ${msg.command}, + bytestring_to_val(${msg.arg})); return true; %} @@ -50,9 +50,9 @@ refine flow MySQL_Flow += { %{ if ( mysql_error ) BifEvent::generate_mysql_error(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - ${msg.code}, - bytestring_to_val(${msg.msg})); + connection()->bro_analyzer()->Conn(), + ${msg.code}, + bytestring_to_val(${msg.msg})); return true; %} @@ -60,8 +60,8 @@ refine flow MySQL_Flow += { %{ if ( mysql_ok ) BifEvent::generate_mysql_ok(connection()->bro_analyzer(), - connection()->bro_analyzer()->Conn(), - ${msg.rows}); + connection()->bro_analyzer()->Conn(), + ${msg.rows}); return true; %} diff --git a/src/analyzer/protocol/mysql/mysql-protocol.pac b/src/analyzer/protocol/mysql/mysql-protocol.pac index e352de0d37..b61cd0c4bc 100644 --- a/src/analyzer/protocol/mysql/mysql-protocol.pac +++ b/src/analyzer/protocol/mysql/mysql-protocol.pac @@ -151,7 +151,7 @@ enum Expected { EXPECT_AUTH_SWITCH, }; -type NUL_String = RE/[^\0]*/; +type NUL_String = RE/[^\0]*\0/; # MySQL PDU