X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/abc8c2d61c65757011d9d32abb01cd1e51232f3a..6d3b0e4599c5aa922bba42e53b038b51d9024a62:/print-resp.c?ds=inline diff --git a/print-resp.c b/print-resp.c index 14fb6116..37a386e3 100644 --- a/print-resp.c +++ b/print-resp.c @@ -36,9 +36,6 @@ #include "netdissect-stdinc.h" #include "netdissect.h" #include -#include -#include -#include #include "extract.h" @@ -59,7 +56,6 @@ #define resp_print_length_negative(ndo) ND_PRINT(" length negative and not -1") #define resp_print_invalid(ndo) ND_PRINT(" invalid") -void resp_print(netdissect_options *, const u_char *, u_int); static int resp_parse(netdissect_options *, const u_char *, int); static int resp_print_string_error_integer(netdissect_options *, const u_char *, int); static int resp_print_simple_string(netdissect_options *, const u_char *, int); @@ -213,14 +209,12 @@ static int resp_get_length(netdissect_options *, const u_char *, int, const u_ch void resp_print(netdissect_options *ndo, const u_char *bp, u_int length) { - int ret_len = 0, length_cur = length; + int ret_len = 0; ndo->ndo_protocol = "resp"; - if(!bp || length <= 0) - return; ND_PRINT(": RESP"); - while (length_cur > 0) { + while (length > 0) { /* * This block supports redis pipelining. * For example, multiple operations can be pipelined within the same string: @@ -230,10 +224,10 @@ resp_print(netdissect_options *ndo, const u_char *bp, u_int length) * In order to handle this case, we must try and parse 'bp' until * 'length' bytes have been processed or we reach a trunc condition. */ - ret_len = resp_parse(ndo, bp, length_cur); + ret_len = resp_parse(ndo, bp, length); TEST_RET_LEN_NORETURN(ret_len); bp += ret_len; - length_cur -= ret_len; + length -= ret_len; } return; @@ -465,7 +459,6 @@ resp_get_length(netdissect_options *ndo, const u_char *bp, int len, const u_char if (len == 0) goto trunc; - ND_TCHECK_1(bp); too_large = 0; neg = 0; if (GET_U_1(bp) == '-') {