netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH nft 1/2] evaluate: update byteorder only for implicit maps
@ 2019-06-14  9:58 Pablo Neira Ayuso
  2019-06-14  9:58 ` [PATCH nft 2/2] evaluate: double datatype_free() with dynamic integer datatypes Pablo Neira Ayuso
  0 siblings, 1 reply; 2+ messages in thread
From: Pablo Neira Ayuso @ 2019-06-14  9:58 UTC (permalink / raw)
  To: netfilter-devel

The byteorder adjustment for the integer datatype is only required by
implicit maps.

Fixes: b9b6092304ae ("evaluate: store byteorder for set keys")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
 src/evaluate.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/evaluate.c b/src/evaluate.c
index a41a28e97288..337b66c5ad2d 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -84,7 +84,8 @@ static struct expr *implicit_set_declaration(struct eval_ctx *ctx,
 	struct set *set;
 	struct handle h;
 
-	key_fix_dtype_byteorder(key);
+	if (expr->set_flags & NFT_SET_MAP)
+		key_fix_dtype_byteorder(key);
 
 	set = set_alloc(&expr->location);
 	set->flags	= NFT_SET_ANONYMOUS | expr->set_flags;
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [PATCH nft 2/2] evaluate: double datatype_free() with dynamic integer datatypes
  2019-06-14  9:58 [PATCH nft 1/2] evaluate: update byteorder only for implicit maps Pablo Neira Ayuso
@ 2019-06-14  9:58 ` Pablo Neira Ayuso
  0 siblings, 0 replies; 2+ messages in thread
From: Pablo Neira Ayuso @ 2019-06-14  9:58 UTC (permalink / raw)
  To: netfilter-devel

datatype_set() already deals with this case, remove this.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
 include/datatype.h | 1 -
 src/datatype.c     | 5 -----
 src/evaluate.c     | 2 --
 3 files changed, 8 deletions(-)

diff --git a/include/datatype.h b/include/datatype.h
index 23f45ab7d6eb..63617ebd2753 100644
--- a/include/datatype.h
+++ b/include/datatype.h
@@ -260,7 +260,6 @@ extern const struct datatype boolean_type;
 void inet_service_type_print(const struct expr *expr, struct output_ctx *octx);
 
 extern const struct datatype *concat_type_alloc(uint32_t type);
-extern void concat_type_destroy(const struct datatype *dtype);
 
 static inline uint32_t concat_subtype_add(uint32_t type, uint32_t subtype)
 {
diff --git a/src/datatype.c b/src/datatype.c
index 8ae3aa1c3f90..519f79d70b9a 100644
--- a/src/datatype.c
+++ b/src/datatype.c
@@ -1162,11 +1162,6 @@ const struct datatype *concat_type_alloc(uint32_t type)
 	return dtype;
 }
 
-void concat_type_destroy(const struct datatype *dtype)
-{
-	datatype_free(dtype);
-}
-
 const struct datatype *set_datatype_alloc(const struct datatype *orig_dtype,
 					  unsigned int byteorder)
 {
diff --git a/src/evaluate.c b/src/evaluate.c
index 337b66c5ad2d..70c7e597f3b0 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -71,8 +71,6 @@ static void key_fix_dtype_byteorder(struct expr *key)
 		return;
 
 	datatype_set(key, set_datatype_alloc(dtype, key->byteorder));
-	if (dtype->flags & DTYPE_F_ALLOC)
-		concat_type_destroy(dtype);
 }
 
 static struct expr *implicit_set_declaration(struct eval_ctx *ctx,
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-06-14  9:58 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-14  9:58 [PATCH nft 1/2] evaluate: update byteorder only for implicit maps Pablo Neira Ayuso
2019-06-14  9:58 ` [PATCH nft 2/2] evaluate: double datatype_free() with dynamic integer datatypes Pablo Neira Ayuso

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).