]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
Introduce utility flow macros to help referencing/dereferencing flows.
authorAnoop Saldanha <anoopsaldanha@gmail.com>
Thu, 27 Sep 2012 09:10:07 +0000 (14:40 +0530)
committerVictor Julien <victor@inliniac.net>
Tue, 2 Oct 2012 08:20:09 +0000 (10:20 +0200)
src/flow-util.h

index e93b013a6a8208541737488e36d704be926a501c..a44a553a8d2783413816aa8412d81bf70b9d12b4 100644 (file)
 #define FLOW_CHECK_MEMCAP(size) \
     ((((uint64_t)SC_ATOMIC_GET(flow_memuse) + (uint64_t)(size)) <= flow_config.memcap))
 
+#define FlowReference(dst_f_ptr, f) do {        \
+        FlowIncrUsecnt((f));                    \
+        *(dst_f_ptr) = f;                       \
+    } while (0)
+
+#define FlowDeReference(src_f_ptr) do {           \
+        FlowDecrUsecnt(*(src_f_ptr));   \
+        *(src_f_ptr) = NULL;                      \
+    } while (0)
+
 Flow *FlowAlloc(void);
 Flow *FlowAllocDirect(void);
 void FlowFree(Flow *);