]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
detect: group types used in traffic variables
authorVictor Julien <vjulien@oisf.net>
Mon, 4 Mar 2024 11:53:35 +0000 (12:53 +0100)
committerVictor Julien <vjulien@oisf.net>
Fri, 28 Jun 2024 05:39:48 +0000 (07:39 +0200)
Traffic variables (flowvars, flowbits, xbits, etc) use a smaller int for
their type than detection types. As a workaround make sure the values fit
in a uint8_t.

src/detect-engine-register.h

index 94f8de15de83f646a650f984e8b4efbf81ae9f4b..1c7c03bf81450fec8f1d2285110d664d6d862d2e 100644 (file)
@@ -54,7 +54,18 @@ enum DetectKeywordId {
     DETECT_FLOW,
     /* end prefilter sort */
 
+    /* values used in util-var.c go here, to avoid int overflows
+     * TODO update var logic to use a larger type. */
     DETECT_THRESHOLD,
+    DETECT_FLOWBITS,
+    DETECT_FLOWVAR,
+    DETECT_FLOWVAR_POSTMATCH,
+    DETECT_FLOWINT,
+    DETECT_HOSTBITS,
+    DETECT_XBITS,
+    DETECT_PKTVAR,
+    /* end util-var.c logic */
+
     DETECT_METADATA,
     DETECT_REFERENCE,
     DETECT_TAG,
@@ -82,14 +93,8 @@ enum DetectKeywordId {
     DETECT_ISDATAAT,
     DETECT_ID,
     DETECT_RPC,
-    DETECT_FLOWVAR,
-    DETECT_FLOWVAR_POSTMATCH,
-    DETECT_FLOWINT,
-    DETECT_PKTVAR,
     DETECT_NOALERT,
     DETECT_ALERT,
-    DETECT_FLOWBITS,
-    DETECT_HOSTBITS,
     DETECT_IPV4_CSUM,
     DETECT_TCPV4_CSUM,
     DETECT_TCPV6_CSUM,
@@ -259,7 +264,6 @@ enum DetectKeywordId {
     DETECT_AL_DNP3IND,
     DETECT_AL_DNP3OBJ,
 
-    DETECT_XBITS,
     DETECT_BASE64_DECODE,
     DETECT_BASE64_DATA,