As no "genre" in pf.os exceed 16 bytes of length, we reduce
NFT_OSF_MAXGENRELEN parameter to 16 bytes and use it instead of IFNAMSIZ.

Signed-off-by: Fernando Fernandez Mancera <[email protected]>
---
 include/linux/netfilter/nf_tables.h | 1 +
 src/osf.c                           | 4 +---
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/include/linux/netfilter/nf_tables.h 
b/include/linux/netfilter/nf_tables.h
index 63b9054..fe65652 100644
--- a/include/linux/netfilter/nf_tables.h
+++ b/include/linux/netfilter/nf_tables.h
@@ -8,6 +8,7 @@
 #define NFT_SET_MAXNAMELEN     NFT_NAME_MAXLEN
 #define NFT_OBJ_MAXNAMELEN     NFT_NAME_MAXLEN
 #define NFT_USERDATA_MAXLEN    256
+#define NFT_OSF_MAXGENRELEN    16
 
 /**
  * enum nft_registers - nf_tables registers
diff --git a/src/osf.c b/src/osf.c
index f07a725..131d54e 100644
--- a/src/osf.c
+++ b/src/osf.c
@@ -4,8 +4,6 @@
 #include <string.h>
 #include <osf.h>
 
-#include <net/if.h>
-
 static void osf_expr_print(const struct expr *expr, struct output_ctx *octx)
 {
        nft_print(octx, "osf name");
@@ -24,7 +22,7 @@ static const struct expr_ops osf_expr_ops = {
 
 struct expr *osf_expr_alloc(const struct location *loc)
 {
-       unsigned int len = IFNAMSIZ * BITS_PER_BYTE;
+       unsigned int len = NFT_OSF_MAXGENRELEN * BITS_PER_BYTE;
        const struct datatype *type = &string_type;
        struct expr *expr;
 
-- 
2.18.0

--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to