From f0e9f46c7c5470ffa16714c9f7c9ad5c55b7f14c Mon Sep 17 00:00:00 2001 From: Evan Typanski Date: Wed, 6 Nov 2024 13:43:44 -0500 Subject: [PATCH] spicy-redis: Add some commands and touch up parsing --- scripts/base/protocols/redis/main.zeek | 105 ++++++++++++------ src/analyzer/protocol/redis/redis.spicy | 20 ++++ src/analyzer/protocol/redis/resp.evt | 1 + src/analyzer/protocol/redis/resp.spicy | 27 ++--- .../redis.log | 12 ++ .../scripts.base.protocols.redis.auth/output | 10 ++ .../redis.log | 19 +--- testing/btest/Traces/redis/almost-resp.trace | Bin 0 -> 7613 bytes testing/btest/Traces/redis/auth.trace | Bin 0 -> 335195 bytes .../base/protocols/redis/almost-redis.zeek | 8 ++ .../scripts/base/protocols/redis/auth.zeek | 16 +++ .../scripts/base/protocols/redis/bulk.zeek | 9 +- .../redis/client-reply-off-2conn.zeek | 1 - .../protocols/redis/client-reply-off.zeek | 1 - .../redis/client-skip-while-off.zeek | 1 - .../base/protocols/redis/django-cloud.zeek | 16 +-- .../scripts/base/protocols/redis/django.zeek | 12 +- .../redis/pipelined-with-commands.zeek | 18 +-- .../scripts/base/protocols/redis/set.zeek | 9 +- .../base/protocols/redis/standalone.spicy | 11 -- .../scripts/base/protocols/redis/trace.zeek | 18 +-- 21 files changed, 200 insertions(+), 114 deletions(-) create mode 100644 testing/btest/Baseline/scripts.base.protocols.redis.almost-redis/redis.log create mode 100644 testing/btest/Baseline/scripts.base.protocols.redis.auth/output create mode 100644 testing/btest/Traces/redis/almost-resp.trace create mode 100644 testing/btest/Traces/redis/auth.trace create mode 100644 testing/btest/scripts/base/protocols/redis/almost-redis.zeek create mode 100644 testing/btest/scripts/base/protocols/redis/auth.zeek delete mode 100644 testing/btest/scripts/base/protocols/redis/standalone.spicy diff --git a/scripts/base/protocols/redis/main.zeek b/scripts/base/protocols/redis/main.zeek index 4d11aede9f..22ecda0402 100644 --- a/scripts/base/protocols/redis/main.zeek +++ b/scripts/base/protocols/redis/main.zeek @@ -26,6 +26,11 @@ export { key: string &log; }; + type AuthCommand: record { + username: string &optional; + password: string; + }; + type Command: record { ## The raw command, exactly as parsed raw: vector of string; @@ -71,15 +76,18 @@ export { type State: record { ## Pending requests. - pending: table[count] of Info; + pending: table[count] of Info; ## Current request in the pending queue. - current_request: count &default=0; + current_request: count &default=0; ## Current response in the pending queue. current_response: count &default=0; ## Ranges where we do not expect a response ## Each range is one or two elements, one meaning it's unbounded, two meaning ## it begins at one and ends at the second. no_response_ranges: vector of vector of count; + ## We store if this analyzer had a violation to avoid logging if so. + ## This should not be super necessary, but worth a shot. + violation: bool &default=F; }; # Redis specifically mentions 10k commands as a good pipelining threshold, so @@ -102,6 +110,21 @@ event zeek_init() &priority=5 Analyzer::register_for_ports(Analyzer::ANALYZER_SPICY_REDIS, ports); } +event analyzer_violation_info(atype: AllAnalyzers::Tag, + info: AnalyzerViolationInfo) + { + if ( atype == Analyzer::ANALYZER_SPICY_REDIS ) + { + if ( info?$c ) + { + if ( info$c?$redis_state ) + { + info$c$redis_state$violation = T; + } + } + } + } + function new_redis_session(c: connection): Info { return Info($ts=network_time(), $uid=c$uid, $id=c$id); @@ -116,11 +139,14 @@ function make_new_state(c: connection) function set_state(c: connection, is_orig: bool) { - if ( ! c?$redis_state ) make_new_state(c); + if ( ! c?$redis_state ) + make_new_state(c); local current: count; - if ( is_orig ) current = c$redis_state$current_request; - else current = c$redis_state$current_response; + if ( is_orig ) + current = c$redis_state$current_request; + else + current = c$redis_state$current_response; if ( current !in c$redis_state$pending ) c$redis_state$pending[current] = new_redis_session(c); @@ -131,28 +157,24 @@ function set_state(c: connection, is_orig: bool) # Returns true if the last interval exists and is closed function is_last_interval_closed(c: connection): bool { - return |c$redis_state$no_response_ranges| == 0 || |c$redis_state$no_response_ranges[|c$redis_state$no_response_ranges| - 1]| != 1; + return |c$redis_state$no_response_ranges| == 0 + || |c$redis_state$no_response_ranges[|c$redis_state$no_response_ranges| - 1]| != 1; } event Redis::command(c: connection, is_orig: bool, command: Command) { - if ( ! c?$redis_state ) make_new_state(c); + if ( ! c?$redis_state ) + make_new_state(c); - if ( max_pending_requests > 0 && |c$redis_state$pending| > max_pending_requests ) + if ( max_pending_requests > 0 + && |c$redis_state$pending| > max_pending_requests ) { Reporter::conn_weird("Redis_excessive_pipelining", c); - - # Just spit out what we have - while ( c$redis_state$current_response < c$redis_state$current_request ) - { - local cr = c$redis_state$current_response; - if ( cr in c$redis_state$pending ) - { - Log::write(Redis::LOG, c$redis_state$pending[cr]); - delete c$redis_state$pending[cr]; - } - ++c$redis_state$current_response; - } + # Delete the current state and restart later. We'll be in a weird state, but + # really we want to abort. I don't quite get how to register this as a + # violation. :) + delete c$redis_state; + return; } ++c$redis_state$current_request; @@ -164,9 +186,10 @@ event Redis::command(c: connection, is_orig: bool, command: Command) if ( to_lower(command$raw[2]) == "on" ) { # If the last range is open, close it here. Otherwise, noop - if ( |c$redis_state$no_response_ranges| > 0 ) + if ( |c$redis_state$no_response_ranges| > 0 ) { - local range = c$redis_state$no_response_ranges[|c$redis_state$no_response_ranges| - 1]; + local range = c$redis_state$no_response_ranges[|c$redis_state$no_response_ranges| + - 1]; if ( |range| == 1 ) { range += c$redis_state$current_request; @@ -176,16 +199,17 @@ event Redis::command(c: connection, is_orig: bool, command: Command) if ( to_lower(command$raw[2]) == "off" ) { # Only add a new interval if the last one is closed - if ( is_last_interval_closed(c) ) + if ( is_last_interval_closed(c) ) { c$redis_state$no_response_ranges += vector(c$redis_state$current_request); } } if ( to_lower(command$raw[2]) == "skip" ) { - if ( is_last_interval_closed(c) ) + if ( is_last_interval_closed(c) ) # It skips this one and the next one - c$redis_state$no_response_ranges += vector(c$redis_state$current_request, c$redis_state$current_request + 2); + c$redis_state$no_response_ranges += vector(c$redis_state$current_request, + c$redis_state$current_request + 2); } } } @@ -202,10 +226,10 @@ function response_num(c: connection): count for ( i in c$redis_state$no_response_ranges ) { local range = c$redis_state$no_response_ranges[i]; - assert |range| >= 1; + assert | range | >= 1; if ( |range| == 1 && resp_num > range[0] ) - {} # TODO: This is necessary if not using pipelining - if ( |range| == 2 && resp_num >= range[0] && resp_num < range[1] ) + { } # TODO: This is necessary if not using pipelining + if ( |range| == 2 && resp_num >= range[0] && resp_num < range[1] ) return range[1]; } @@ -215,7 +239,8 @@ function response_num(c: connection): count event Redis::server_data(c: connection, is_orig: bool, data: ServerData) { - if ( ! c?$redis_state ) make_new_state(c); + if ( ! c?$redis_state ) + make_new_state(c); local previous_response_num = c$redis_state$current_response; c$redis_state$current_response = response_num(c); @@ -232,27 +257,37 @@ event Redis::server_data(c: connection, is_orig: bool, data: ServerData) next; } - if ( previous_response_num in c$redis_state$pending ) + if ( previous_response_num in c$redis_state$pending && + c$redis_state$pending[previous_response_num]?$cmd ) { Log::write(Redis::LOG, c$redis_state$pending[previous_response_num]); delete c$redis_state$pending[previous_response_num]; } previous_response_num += 1; } - # Log this one - Log::write(Redis::LOG, c$redis); - delete c$redis_state$pending[c$redis_state$current_response]; + # Log this one if we have the request and response + if ( c$redis?$cmd ) + { + Log::write(Redis::LOG, c$redis); + delete c$redis_state$pending[c$redis_state$current_response]; + } } hook finalize_redis(c: connection) { + if ( c$redis_state$violation ) + { + # If there's a violation, make sure everything gets deleted + delete c$redis_state; + } # Flush all pending but incomplete request/response pairs. - if ( c?$redis_state ) + if ( c?$redis_state && c$redis_state$current_response != 0 ) { for ( r, info in c$redis_state$pending ) { # We don't use pending elements at index 0. - if ( r == 0 ) next; + if ( r == 0 ) + next; Log::write(Redis::LOG, info); } } diff --git a/src/analyzer/protocol/redis/redis.spicy b/src/analyzer/protocol/redis/redis.spicy index b782380cd1..96cd222068 100644 --- a/src/analyzer/protocol/redis/redis.spicy +++ b/src/analyzer/protocol/redis/redis.spicy @@ -6,6 +6,7 @@ import RESP; public type KnownCommand = enum { APPEND, + AUTH, BITCOUNT, BITFIELD, BITFIELD_RO, @@ -234,6 +235,7 @@ function command_from(cmd_bytes: bytes): optional { switch (cmd_bytes.lower()) { case b"set": cmd = KnownCommand::SET; case b"append": cmd = KnownCommand::APPEND; + case b"auth": cmd = KnownCommand::AUTH; case b"bitcount": cmd = KnownCommand::BITCOUNT; case b"bitfield": cmd = KnownCommand::BITFIELD; case b"bitfield_ro": cmd = KnownCommand::BITFIELD_RO; @@ -352,3 +354,21 @@ public function make_get(command: Command): Get { public function is_get(data: RESP::ClientData): bool { return data.command.known && *(data.command.known) == KnownCommand::GET && |data.command.raw| >= 2; } + +type Auth = struct { + username: optional; + password: bytes; +}; + +public function make_auth(command: Command): Auth { + assert |command.raw| >= 2 : "AUTH must have arguments"; + if (|command.raw| == 2) { + return [$username = Null, $password = command.raw[1]]; + } + + return [$username = command.raw[1], $password = command.raw[2]]; +} + +public function is_auth(data: RESP::ClientData): bool { + return data.command.known && *(data.command.known) == KnownCommand::AUTH && |data.command.raw| >= 2; +} diff --git a/src/analyzer/protocol/redis/resp.evt b/src/analyzer/protocol/redis/resp.evt index a8a9db92a8..035a21a2db 100644 --- a/src/analyzer/protocol/redis/resp.evt +++ b/src/analyzer/protocol/redis/resp.evt @@ -12,6 +12,7 @@ export Zeek_Redis::ZeekServerData; on RESP::ClientData if ( Redis::is_set(self) ) -> event Redis::set_command($conn, $is_orig, Redis::make_set(self.command)); on RESP::ClientData if ( Redis::is_get(self) ) -> event Redis::get_command($conn, $is_orig, Redis::make_get(self.command)); +on RESP::ClientData if ( Redis::is_auth(self) ) -> event Redis::auth_command($conn, $is_orig, Redis::make_auth(self.command)); # All client data is a command on RESP::ClientData -> event Redis::command($conn, $is_orig, self.command); diff --git a/src/analyzer/protocol/redis/resp.spicy b/src/analyzer/protocol/redis/resp.spicy index 7302f4103f..1396a65b2a 100644 --- a/src/analyzer/protocol/redis/resp.spicy +++ b/src/analyzer/protocol/redis/resp.spicy @@ -9,7 +9,7 @@ import spicy; const MAX_SIZE = 1024 * 1024; public type ClientMessages = unit { - : (ClientData &synchronize)[]; + : ClientData[]; }; public type ServerMessages = unit { @@ -17,21 +17,22 @@ public type ServerMessages = unit { }; public type ClientData = unit { - %synchronize-after = b"\x0d\x0a"; + on %init() { self.start = self.input(); } + # Clients can only be an array or inline - ty: uint8 &convert=DataType($$); + ty: uint8 &convert=DataType($$) { + if (self.ty != DataType::ARRAY) { + # This is inline, so we need to reparse `ty` + self.set_input(self.start); + } + } if (self.ty == DataType::ARRAY) { multibulk: Array; } else { - # HACK: If the type isn'tan array, this is just some random unserialized - # string until \r\n - do this by prepending the type to the remaining bytes. - # Formally in Redis code, that's an "inline command." - # - # As an extra point, this is handled in redis in `processInlineBuffer`, - # which has a hardcoded limit of 1024*64. That seems too big. We'll do 1024. - inline: RedisBytes &convert=(pack(cast(self.ty), spicy::ByteOrder::Network) + $$) &max-size=1024; + inline: RedisBytes &max-size=1024; }; + var start: iterator; var command: Redis::Command; on %done { @@ -152,10 +153,10 @@ type Set = unit { elements: Data[self.num_elements]; }; -on Data::%done { +on ServerData::%done { spicy::accept_input(); } -on Data::%error { - spicy::decline_input("error while parsing RESP data"); +on ServerData::%error { + spicy::decline_input("error while parsing RESP server data"); } diff --git a/testing/btest/Baseline/scripts.base.protocols.redis.almost-redis/redis.log b/testing/btest/Baseline/scripts.base.protocols.redis.almost-redis/redis.log new file mode 100644 index 0000000000..5d183629a1 --- /dev/null +++ b/testing/btest/Baseline/scripts.base.protocols.redis.almost-redis/redis.log @@ -0,0 +1,12 @@ +### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63. +#separator \x09 +#set_separator , +#empty_field (empty) +#unset_field - +#path redis +#open XXXX-XX-XX-XX-XX-XX +#fields ts uid id.orig_h id.orig_p id.resp_h id.resp_p cmd.command cmd.key cmd.value response.err response.data +#types time string addr port addr port string string string bool string +XXXXXXXXXX.XXXXXX CtPZjS20MLrsMUOJi2 127.0.0.1 53099 127.0.0.1 6379 AUTH - - F OK +XXXXXXXXXX.XXXXXX CtPZjS20MLrsMUOJi2 127.0.0.1 53099 127.0.0.1 6379 PING - - F OK +#close XXXX-XX-XX-XX-XX-XX diff --git a/testing/btest/Baseline/scripts.base.protocols.redis.auth/output b/testing/btest/Baseline/scripts.base.protocols.redis.auth/output new file mode 100644 index 0000000000..e859b654d6 --- /dev/null +++ b/testing/btest/Baseline/scripts.base.protocols.redis.auth/output @@ -0,0 +1,10 @@ +### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63. +AUTH +username: notauser +password: notapassword +AUTH +username: default +password: defaultpasswordinvalid +AUTH +username: noone +password: password diff --git a/testing/btest/Baseline/scripts.base.protocols.redis.excessive-pipelining/redis.log b/testing/btest/Baseline/scripts.base.protocols.redis.excessive-pipelining/redis.log index e5c9e70dbb..4d68ceed52 100644 --- a/testing/btest/Baseline/scripts.base.protocols.redis.excessive-pipelining/redis.log +++ b/testing/btest/Baseline/scripts.base.protocols.redis.excessive-pipelining/redis.log @@ -7,17 +7,10 @@ #open XXXX-XX-XX-XX-XX-XX #fields ts uid id.orig_h id.orig_p id.resp_h id.resp_p cmd.command cmd.key cmd.value response.err response.data #types time string addr port addr port string string string bool string -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - - - +XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - F PONG +XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - F PONG +XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - F PONG +XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 PING - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG @@ -26,8 +19,4 @@ XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG -XXXXXXXXXX.XXXXXX ClEkJM2Vm5giqnMf4h ::1 57156 ::1 6379 - - - F PONG #close XXXX-XX-XX-XX-XX-XX diff --git a/testing/btest/Traces/redis/almost-resp.trace b/testing/btest/Traces/redis/almost-resp.trace new file mode 100644 index 0000000000000000000000000000000000000000..168df9a7549f69c58bfa66e2621c0fca39ea4ebc GIT binary patch literal 7613 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 b@e|b4>V#rbNC+`m@#WD4IBrCvjvfC4cKcWl literal 0 HcmV?d00001 diff --git a/testing/btest/Traces/redis/auth.trace b/testing/btest/Traces/redis/auth.trace new file mode 100644 index 0000000000000000000000000000000000000000..3f56116fe23d253ba0cebf67109248491abb46ac GIT binary patch literal 335195 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 literal 0 HcmV?d00001 diff --git a/testing/btest/scripts/base/protocols/redis/almost-redis.zeek b/testing/btest/scripts/base/protocols/redis/almost-redis.zeek new file mode 100644 index 0000000000..697785ea81 --- /dev/null +++ b/testing/btest/scripts/base/protocols/redis/almost-redis.zeek @@ -0,0 +1,8 @@ +# @TEST-DOC: Test 2 commands that look like RESP, then server responses don't +# +# @TEST-EXEC: zeek -Cr $TRACES/redis/almost-resp.trace base/protocols/redis %INPUT >output +# @TEST-EXEC: btest-diff redis.log +# +# Really, the first 2 ARE Redis. The later ones should not be logged because we +# realized it's not Redis. The output from the server is: +# +OK\r\n+OK\r\nnot RESP\r\nStill not RESP\r\nNope\r\n diff --git a/testing/btest/scripts/base/protocols/redis/auth.zeek b/testing/btest/scripts/base/protocols/redis/auth.zeek new file mode 100644 index 0000000000..e271fbf510 --- /dev/null +++ b/testing/btest/scripts/base/protocols/redis/auth.zeek @@ -0,0 +1,16 @@ +# @TEST-DOC: Test Zeek with AUTH commands +# +# @TEST-EXEC: zeek -Cr $TRACES/redis/auth.trace base/protocols/redis %INPUT >output +# @TEST-EXEC: btest-diff output + +event Redis::auth_command(c: connection, is_orig: bool, + command: Redis::AuthCommand) + { + print "AUTH"; + if ( command?$username ) + print fmt("username: %s", command$username); + else + print "username: default"; + + print fmt("password: %s", command$password); + } diff --git a/testing/btest/scripts/base/protocols/redis/bulk.zeek b/testing/btest/scripts/base/protocols/redis/bulk.zeek index 6068c34b23..4d7d23e33a 100644 --- a/testing/btest/scripts/base/protocols/redis/bulk.zeek +++ b/testing/btest/scripts/base/protocols/redis/bulk.zeek @@ -7,7 +7,8 @@ # code directly to the server, but it's useful to see if that trace might come # up with something different. See: # https://redis.io/docs/latest/develop/use/patterns/bulk-loading/ -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - print fmt("SET: %s %s", command$key, command$value); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + print fmt("SET: %s %s", command$key, command$value); + } diff --git a/testing/btest/scripts/base/protocols/redis/client-reply-off-2conn.zeek b/testing/btest/scripts/base/protocols/redis/client-reply-off-2conn.zeek index 6a707fc7d7..211a9cb6ce 100644 --- a/testing/btest/scripts/base/protocols/redis/client-reply-off-2conn.zeek +++ b/testing/btest/scripts/base/protocols/redis/client-reply-off-2conn.zeek @@ -2,4 +2,3 @@ # # @TEST-EXEC: zeek -Cr $TRACES/redis/reply-off-on-2conn.trace base/protocols/redis %INPUT >output # @TEST-EXEC: btest-diff redis.log - diff --git a/testing/btest/scripts/base/protocols/redis/client-reply-off.zeek b/testing/btest/scripts/base/protocols/redis/client-reply-off.zeek index d977272279..3cda5fa9dd 100644 --- a/testing/btest/scripts/base/protocols/redis/client-reply-off.zeek +++ b/testing/btest/scripts/base/protocols/redis/client-reply-off.zeek @@ -2,4 +2,3 @@ # # @TEST-EXEC: zeek -Cr $TRACES/redis/reply-off-on.trace base/protocols/redis %INPUT >output # @TEST-EXEC: btest-diff redis.log - diff --git a/testing/btest/scripts/base/protocols/redis/client-skip-while-off.zeek b/testing/btest/scripts/base/protocols/redis/client-skip-while-off.zeek index eeed61422b..eb4678346f 100644 --- a/testing/btest/scripts/base/protocols/redis/client-skip-while-off.zeek +++ b/testing/btest/scripts/base/protocols/redis/client-skip-while-off.zeek @@ -2,4 +2,3 @@ # # @TEST-EXEC: zeek -Cr $TRACES/redis/client-skip-while-off.trace base/protocols/redis %INPUT >output # @TEST-EXEC: btest-diff redis.log - diff --git a/testing/btest/scripts/base/protocols/redis/django-cloud.zeek b/testing/btest/scripts/base/protocols/redis/django-cloud.zeek index 2aef19e4e8..b8faa8e31e 100644 --- a/testing/btest/scripts/base/protocols/redis/django-cloud.zeek +++ b/testing/btest/scripts/base/protocols/redis/django-cloud.zeek @@ -4,12 +4,12 @@ # @TEST-EXEC: btest-diff output # @TEST-EXEC: btest-diff redis.log -redef Redis::ports += { - 10625/tcp, -}; +redef Redis::ports += { 10625/tcp, }; -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - # Print the whole command because these have extra data that's worth capturing. - print fmt("SET: %s %s expires in %d milliseconds", command$key, command$value, command$px); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + # Print the whole command because these have extra data that's worth capturing. + print fmt("SET: %s %s expires in %d milliseconds", command$key, command$value, + command$px); + } diff --git a/testing/btest/scripts/base/protocols/redis/django.zeek b/testing/btest/scripts/base/protocols/redis/django.zeek index 0831e8e3a3..fecc1f1277 100644 --- a/testing/btest/scripts/base/protocols/redis/django.zeek +++ b/testing/btest/scripts/base/protocols/redis/django.zeek @@ -4,8 +4,10 @@ # @TEST-EXEC: btest-diff output # @TEST-EXEC: btest-diff redis.log -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - # Print the whole command because these have extra data that's worth capturing. - print fmt("SET: %s %s expires in %d milliseconds", command$key, command$value, command$px); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + # Print the whole command because these have extra data that's worth capturing. + print fmt("SET: %s %s expires in %d milliseconds", command$key, command$value, + command$px); + } diff --git a/testing/btest/scripts/base/protocols/redis/pipelined-with-commands.zeek b/testing/btest/scripts/base/protocols/redis/pipelined-with-commands.zeek index 23559e93b1..8c05b5a636 100644 --- a/testing/btest/scripts/base/protocols/redis/pipelined-with-commands.zeek +++ b/testing/btest/scripts/base/protocols/redis/pipelined-with-commands.zeek @@ -7,12 +7,14 @@ # Sometimes commands aren't serialized, like when pipelining. This still works! So we # should handle this. This particular example has a few commands, amongst them a SET and # a GET. -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - print fmt("SET: %s %s", command$key, command$value); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + print fmt("SET: %s %s", command$key, command$value); + } -event Redis::get_command(c: connection, is_orig: bool, command: Redis::GetCommand) - { - print fmt("GET: %s", command); - } +event Redis::get_command(c: connection, is_orig: bool, + command: Redis::GetCommand) + { + print fmt("GET: %s", command); + } diff --git a/testing/btest/scripts/base/protocols/redis/set.zeek b/testing/btest/scripts/base/protocols/redis/set.zeek index 7264d93760..804a740486 100644 --- a/testing/btest/scripts/base/protocols/redis/set.zeek +++ b/testing/btest/scripts/base/protocols/redis/set.zeek @@ -3,7 +3,8 @@ # @TEST-EXEC: zeek -Cr $TRACES/redis/set.trace base/protocols/redis %INPUT >output # @TEST-EXEC: btest-diff output -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - print fmt("Key: %s Value: %s", command$key, command$value); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + print fmt("Key: %s Value: %s", command$key, command$value); + } diff --git a/testing/btest/scripts/base/protocols/redis/standalone.spicy b/testing/btest/scripts/base/protocols/redis/standalone.spicy deleted file mode 100644 index 17bd61ed15..0000000000 --- a/testing/btest/scripts/base/protocols/redis/standalone.spicy +++ /dev/null @@ -1,11 +0,0 @@ -# @TEST-DOC: Test parsing behavior of RESP. -# -# @TEST-EXEC: spicyc ${DIST}/analyzer/resp.spicy ${DIST}/analyzer/redis.spicy -j -d -o redis.hlto -# -# TODO: A lot of tests are possible from the docs and having them would be nice. -# But, a lot of characters ($, -, etc.) cause problems with TEST_EXEC. ugh. -# @TEST-EXEC: printf "+OK\x0d\x0a" | spicy-dump -p RESP::Data redis.hlto >>output 2>&1 -# @TEST-EXEC: printf ":1000\x0d\x0a" | spicy-dump -p RESP::Data redis.hlto >>output 2>&1 -# @TEST-EXEC: printf ":-1000\x0d\x0a" | spicy-dump -p RESP::Data redis.hlto >>output 2>&1 -# @TEST-EXEC: printf ":+1000\x0d\x0a" | spicy-dump -p RESP::Data redis.hlto >>output 2>&1 -# @TEST-EXEC: TEST_DIFF_CANONIFIER= btest-diff output diff --git a/testing/btest/scripts/base/protocols/redis/trace.zeek b/testing/btest/scripts/base/protocols/redis/trace.zeek index 1daf90ce16..383602adde 100644 --- a/testing/btest/scripts/base/protocols/redis/trace.zeek +++ b/testing/btest/scripts/base/protocols/redis/trace.zeek @@ -4,12 +4,14 @@ # @TEST-EXEC: btest-diff output # @TEST-EXEC: btest-diff redis.log -event Redis::set_command(c: connection, is_orig: bool, command: Redis::SetCommand) - { - print fmt("SET: %s %s", command$key, command$value); - } +event Redis::set_command(c: connection, is_orig: bool, + command: Redis::SetCommand) + { + print fmt("SET: %s %s", command$key, command$value); + } -event Redis::get_command(c: connection, is_orig: bool, command: Redis::GetCommand) - { - print fmt("GET: %s", command); - } +event Redis::get_command(c: connection, is_orig: bool, + command: Redis::GetCommand) + { + print fmt("GET: %s", command); + }