]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
packet: move action functions to packet files
authorVictor Julien <vjulien@oisf.net>
Tue, 18 Oct 2022 14:18:06 +0000 (16:18 +0200)
committerVictor Julien <vjulien@oisf.net>
Wed, 19 Oct 2022 21:03:24 +0000 (23:03 +0200)
17 files changed:
src/decode.h
src/detect-engine-alert.c
src/detect.c
src/output-json-alert.c
src/output-json-drop.c
src/packet.c
src/packet.h
src/respond-reject.c
src/source-af-packet.c
src/source-dpdk.c
src/source-ipfw.c
src/source-napatech.c
src/source-netmap.c
src/source-nfq.c
src/source-windivert.c
src/stream-tcp.c
src/util-exception-policy.c

index b340a6024f858b0766edba81d59ea140633da58e..4abbd9904bef09f9fdaed8e85c8b01f1111725fe 100644 (file)
@@ -769,46 +769,6 @@ void CaptureStatsSetup(ThreadVars *tv, CaptureStats *s);
         }                                           \
     } while(0)
 
-/** \brief issue drop action
- *
- *  Set drop (+reject) flags in both current and root packet.
- *
- *  \param action action bit flags. Must be limited to ACTION_DROP_REJECT
- */
-static inline void PacketDrop(Packet *p, const uint8_t action, enum PacketDropReason r)
-{
-    BUG_ON((action & ~ACTION_DROP_REJECT) != 0);
-
-    if (p->drop_reason == PKT_DROP_REASON_NOT_SET)
-        p->drop_reason = (uint8_t)r;
-
-    if (p->root) {
-        p->root->action |= action;
-        if (p->root->drop_reason == PKT_DROP_REASON_NOT_SET) {
-            p->root->drop_reason = PKT_DROP_REASON_INNER_PACKET;
-        }
-    }
-    p->action |= action;
-}
-
-static inline uint8_t PacketCheckAction(const Packet *p, const uint8_t a)
-{
-    if (likely(p->root == NULL)) {
-        return (p->action & a) != 0;
-    } else {
-        /* check against both */
-        const uint8_t actions = p->action | p->root->action;
-        return (actions & a) != 0;
-    }
-}
-
-#ifdef UNITTESTS
-static inline uint8_t PacketTestAction(const Packet *p, const uint8_t a)
-{
-    return PacketCheckAction(p, a);
-}
-#endif
-
 #define TUNNEL_INCR_PKT_RTV_NOLOCK(p) do {                                          \
         ((p)->root ? (p)->root->tunnel_rtv_cnt++ : (p)->tunnel_rtv_cnt++);          \
     } while (0)
index 45db57b957e9a67dd4b9410a90a710afa5d32f95..cc917a5a8456c4fd68b4020be2d1abd74edacdeb 100644 (file)
@@ -23,6 +23,7 @@
 #include "detect-engine-tag.h"
 
 #include "decode.h"
+#include "packet.h"
 
 #include "flow.h"
 #include "flow-private.h"
index 4741eeba7daf08bbe6fa2d24c1fb5e7652489e0c..298fb22df2ad66f68a5c5e3a1699673187d37467 100644 (file)
@@ -28,6 +28,7 @@
 #include "conf.h"
 
 #include "decode.h"
+#include "packet.h"
 #include "flow.h"
 #include "stream-tcp.h"
 #include "app-layer.h"
index ed7e07e41e96e2c9804a211c76ca696152cc3532..ab5d993659d5245d66019002a6fdc156fa5301ad 100644 (file)
@@ -25,6 +25,7 @@
  */
 
 #include "suricata-common.h"
+#include "packet.h"
 #include "detect.h"
 #include "flow.h"
 #include "conf.h"
index 84e465c0244a68c05e65c101e5f2af54189f3812..19a692e73bb0a9708c1b36ba569ddb85e04a9b39 100644 (file)
@@ -25,6 +25,7 @@
  */
 
 #include "suricata-common.h"
+#include "packet.h"
 #include "detect.h"
 #include "flow.h"
 #include "conf.h"
index 6a4af426b27abb5fb0b6c1ce10693fc7cd1cd60c..436d367931e0a49912f3e490a6241cc1bbdf466c 100644 (file)
 #include "flow.h"
 #include "host.h"
 #include "util-profiling.h"
+#include "util-validate.h"
+
+/** \brief issue drop action
+ *
+ *  Set drop (+reject) flags in both current and root packet.
+ *
+ *  \param action action bit flags. Must be limited to ACTION_DROP_REJECT
+ */
+void PacketDrop(Packet *p, const uint8_t action, enum PacketDropReason r)
+{
+    DEBUG_VALIDATE_BUG_ON((action & ~ACTION_DROP_REJECT) != 0);
+
+    if (p->drop_reason == PKT_DROP_REASON_NOT_SET)
+        p->drop_reason = (uint8_t)r;
+
+    if (p->root) {
+        p->root->action |= action;
+        if (p->root->drop_reason == PKT_DROP_REASON_NOT_SET) {
+            p->root->drop_reason = PKT_DROP_REASON_INNER_PACKET;
+        }
+    }
+    p->action |= action;
+}
+
+bool PacketCheckAction(const Packet *p, const uint8_t a)
+{
+    if (likely(p->root == NULL)) {
+        return (p->action & a) != 0;
+    } else {
+        /* check against both */
+        const uint8_t actions = p->action | p->root->action;
+        return (actions & a) != 0;
+    }
+}
 
 /**
  *  \brief Initialize a packet structure for use.
index fa7e8ce587474087dafb8eabff7e74332c06fc40..0ef2c5d3abce94519ad98750a402ebed58a86f91 100644 (file)
 
 #include "decode.h"
 
+void PacketDrop(Packet *p, const uint8_t action, enum PacketDropReason r);
+bool PacketCheckAction(const Packet *p, const uint8_t a);
+
+#ifdef UNITTESTS
+static inline uint8_t PacketTestAction(const Packet *p, const uint8_t a)
+{
+    return PacketCheckAction(p, a);
+}
+#endif
+
 void PacketInit(Packet *p);
 void PacketReleaseRefs(Packet *p);
 void PacketReinit(Packet *p);
index da7b1911262b4c3b1c45610197967f83b3998fb0..b53fad9d3f31a08caa2730d8ca3b3fdfc588e9e8 100644 (file)
@@ -25,6 +25,7 @@
  */
 
 #include "suricata-common.h"
+#include "packet.h"
 #include "decode.h"
 #include "packet-queue.h"
 #include "threads.h"
index 029059ec9bb484433a94946aab661657c6149eee..0340d505c61a3a85ce50e4228b392f88be817a4e 100644 (file)
@@ -34,6 +34,7 @@
 #define SC_PCAP_DONT_INCLUDE_PCAP_H 1
 #include "suricata-common.h"
 #include "suricata.h"
+#include "packet.h"
 #include "decode.h"
 #include "packet-queue.h"
 #include "threads.h"
index 43f26655dcc1503c449a50b9cde83393010ff108..3dc9733c1efc3cb6946b7a88556edcbff3bc29dd 100644 (file)
@@ -33,6 +33,7 @@
 #include "suricata-common.h"
 #include "runmodes.h"
 #include "decode.h"
+#include "packet.h"
 #include "source-dpdk.h"
 #include "suricata.h"
 #include "threads.h"
index 20c65b2c8b1ef461e683ac4904d77e505d1af92d..f92d37fcba374b5b92d339993fc7d3244a17d59d 100644 (file)
@@ -27,6 +27,7 @@
 #include "suricata-common.h"
 #include "suricata.h"
 #include "decode.h"
+#include "packet.h"
 #include "packet-queue.h"
 #include "threads.h"
 #include "threadvars.h"
index 9f4df9fa0a6d4fbd8b9b904361a47b2bb44763b3..3a9160ec015d17ed611084488bc0441b61278cd0 100644 (file)
@@ -27,6 +27,7 @@
  */
 #include "suricata-common.h"
 #include "decode.h"
+#include "packet.h"
 #include "suricata.h"
 #include "threadvars.h"
 #include "util-datalink.h"
index 0c5920feff02e7b63cbf97701a07eaa1c18c4b37..603c58b77fe23150a43c57d61d0512c10c8a0b3c 100644 (file)
@@ -37,6 +37,7 @@
 #include "suricata.h"
 #include "suricata-common.h"
 #include "tm-threads.h"
+#include "packet.h"
 #include "util-bpf.h"
 #include "util-privs.h"
 #include "util-validate.h"
index a3d2566fcf5e27d218ec9eb0af5f9d30a355c986..dc41a7927d14475ed262d297c78a2b968468ced3 100644 (file)
@@ -27,6 +27,7 @@
 
 #include "suricata-common.h"
 #include "suricata.h"
+#include "packet.h"
 #include "decode.h"
 #include "packet-queue.h"
 
index 6f6253728ec5f5ee16ccdd1041eb4abe9759862d..4e7b7ac255825ffc323c9c02c16709c01533f10c 100644 (file)
@@ -28,7 +28,7 @@
 #include "suricata-common.h"
 #include "suricata.h"
 #include "tm-threads.h"
-
+#include "packet.h"
 #include "util-byte.h"
 #include "util-debug.h"
 #include "util-device.h"
index 1430e2f9e46143f484a1d9496e6717eb407d6545..36a51511194540822e7780b5348eccd055def310 100644 (file)
@@ -28,7 +28,7 @@
 
 #include "suricata-common.h"
 #include "suricata.h"
-
+#include "packet.h"
 #include "decode.h"
 #include "detect.h"
 
index 68763faeb44300f7984cc8c94e1a321c113300be..79f72013eb63f0381b91ada821d6c5203a4e1d24 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "suricata-common.h"
 #include "suricata.h"
+#include "packet.h"
 #include "util-exception-policy.h"
 #include "util-misc.h"
 #include "stream-tcp-reassemble.h"