]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
src: use NFT_OSF_MAXGENRELEN instead of IFNAMSIZ in osf.c
authorFernando Fernandez Mancera <ffmancera@riseup.net>
Tue, 7 Aug 2018 09:44:06 +0000 (11:44 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 7 Aug 2018 15:23:46 +0000 (17:23 +0200)
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 <ffmancera@riseup.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/linux/netfilter/nf_tables.h
src/osf.c

index 63b90546fcd893436d8b5c1a77b861957cc35589..fe65652583d05d225e086d387f13a71847be6293 100644 (file)
@@ -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
index f07a725cbe1d048891a775cc5a94c49dc272eb25..131d54e4afbf6ed2345a8c9064e93d99280088fe 100644 (file)
--- 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;