summaryrefslogtreecommitdiff
path: root/lib/netfilter/log_obj.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/netfilter/log_obj.c')
-rw-r--r--lib/netfilter/log_obj.c36
1 files changed, 26 insertions, 10 deletions
diff --git a/lib/netfilter/log_obj.c b/lib/netfilter/log_obj.c
index e26e5bd9..acfe58b8 100644
--- a/lib/netfilter/log_obj.c
+++ b/lib/netfilter/log_obj.c
@@ -6,11 +6,29 @@
* Copyright (c) 2008 Patrick McHardy <kaber@trash.net>
*/
-#include <netlink-private/netlink.h>
+#include "nl-default.h"
+
#include <netlink/netfilter/nfnl.h>
#include <netlink/netfilter/log.h>
+#include "nl-priv-dynamic-core/object-api.h"
+#include "nl-priv-dynamic-core/cache-api.h"
+#include "nl-priv-dynamic-core/nl-core.h"
+
/** @cond SKIP */
+struct nfnl_log {
+ NLHDR_COMMON
+
+ uint16_t log_group;
+ uint8_t log_copy_mode;
+ uint32_t log_copy_range;
+ uint32_t log_flush_timeout;
+ uint32_t log_alloc_size;
+ uint32_t log_queue_threshold;
+ uint32_t log_flags;
+ uint32_t log_flag_mask;
+};
+
#define LOG_ATTR_GROUP (1UL << 0)
#define LOG_ATTR_COPY_MODE (1UL << 1)
#define LOG_ATTR_COPY_RANGE (1UL << 3)
@@ -237,17 +255,15 @@ static uint64_t nfnl_log_compare(struct nl_object *_a, struct nl_object *_b,
uint64_t diff = 0;
#define NFNL_LOG_DIFF(ATTR, EXPR) \
- ATTR_DIFF(attrs, LOG_ATTR_##ATTR, a, b, EXPR)
+ ATTR_DIFF(attrs, ATTR, a, b, EXPR)
#define NFNL_LOG_DIFF_VAL(ATTR, FIELD) \
NFNL_LOG_DIFF(ATTR, a->FIELD != b->FIELD)
-
- diff |= NFNL_LOG_DIFF_VAL(GROUP, log_group);
- diff |= NFNL_LOG_DIFF_VAL(COPY_MODE, log_copy_mode);
- diff |= NFNL_LOG_DIFF_VAL(COPY_RANGE, log_copy_range);
- diff |= NFNL_LOG_DIFF_VAL(FLUSH_TIMEOUT, log_flush_timeout);
- diff |= NFNL_LOG_DIFF_VAL(ALLOC_SIZE, log_alloc_size);
- diff |= NFNL_LOG_DIFF_VAL(QUEUE_THRESHOLD, log_queue_threshold);
-
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_GROUP, log_group);
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_COPY_MODE, log_copy_mode);
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_COPY_RANGE, log_copy_range);
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_FLUSH_TIMEOUT, log_flush_timeout);
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_ALLOC_SIZE, log_alloc_size);
+ diff |= NFNL_LOG_DIFF_VAL(LOG_ATTR_QUEUE_THRESHOLD, log_queue_threshold);
#undef NFNL_LOG_DIFF
#undef NFNL_LOG_DIFF_VAL