From 44f44d5cdc9638642c349221ff738908f68b439e Mon Sep 17 00:00:00 2001 From: Toni Uhlig Date: Fri, 19 Mar 2021 17:50:31 +0100 Subject: Prevent some code duplication by using macros for ndpi_int_one_line_struct string comparision. Signed-off-by: Toni Uhlig --- src/include/ndpi_typedefs.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/include/ndpi_typedefs.h b/src/include/ndpi_typedefs.h index 78cce2348..ec9e17eef 100644 --- a/src/include/ndpi_typedefs.h +++ b/src/include/ndpi_typedefs.h @@ -809,6 +809,24 @@ struct ndpi_flow_udp_struct { /* ************************************************** */ +#define LINE_EQUALS(ndpi_int_one_line_struct, string_to_compare) \ + ((ndpi_int_one_line_struct).len == strlen(string_to_compare) && \ + LINE_CMP(ndpi_int_one_line_struct, string_to_compare, strlen(string_to_compare)) == 1) + +#define LINE_STARTS(ndpi_int_one_line_struct, string_to_compare) \ + ((ndpi_int_one_line_struct).len >= strlen(string_to_compare) && \ + LINE_CMP(ndpi_int_one_line_struct, string_to_compare, strlen(string_to_compare)) == 1) + +#define LINE_ENDS(ndpi_int_one_line_struct, string_to_compare) \ + ((ndpi_int_one_line_struct).len >= strlen(string_to_compare) && \ + memcmp((ndpi_int_one_line_struct).ptr + \ + ((ndpi_int_one_line_struct).len - strlen(string_to_compare)), \ + string_to_compare, strlen(string_to_compare)) == 0) + +#define LINE_CMP(ndpi_int_one_line_struct, string_to_compare, string_to_compare_length) \ + ((ndpi_int_one_line_struct).ptr != NULL && \ + memcmp((ndpi_int_one_line_struct).ptr, string_to_compare, string_to_compare_length) == 0) + struct ndpi_int_one_line_struct { const u_int8_t *ptr; u_int16_t len; -- cgit v1.2.3