netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known
@ 2019-08-17 11:32 Ander Juaristi
  2019-08-17 11:32 ` [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known Ander Juaristi
  2019-08-27 12:11 ` [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known Pablo Neira Ayuso
  0 siblings, 2 replies; 4+ messages in thread
From: Ander Juaristi @ 2019-08-17 11:32 UTC (permalink / raw)
  To: netfilter-devel

Signed-off-by: Ander Juaristi <a@juaristi.eus>
---
 include/linux/netfilter/nf_tables.h | 6 ++++++
 src/expr/meta.c                     | 5 ++++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/include/linux/netfilter/nf_tables.h b/include/linux/netfilter/nf_tables.h
index 03fd1b7..0222d08 100644
--- a/include/linux/netfilter/nf_tables.h
+++ b/include/linux/netfilter/nf_tables.h
@@ -799,6 +799,9 @@ enum nft_exthdr_attributes {
  * @NFT_META_OIFKIND: packet output interface kind name (dev->rtnl_link_ops->kind)
  * @NFT_META_BRI_IIFPVID: packet input bridge port pvid
  * @NFT_META_BRI_IIFVPROTO: packet input bridge vlan proto
+ * @NFT_META_TIME_NS: time since epoch (in nanoseconds)
+ * @NFT_META_TIME_DAY: day of week (from 0 = Sunday to 6 = Saturday)
+ * @NFT_META_TIME_HOUR: hour of day (in seconds)
  */
 enum nft_meta_keys {
 	NFT_META_LEN,
@@ -831,6 +834,9 @@ enum nft_meta_keys {
 	NFT_META_OIFKIND,
 	NFT_META_BRI_IIFPVID,
 	NFT_META_BRI_IIFVPROTO,
+	NFT_META_TIME_NS,
+	NFT_META_TIME_DAY,
+	NFT_META_TIME_HOUR,
 };
 
 /**
diff --git a/src/expr/meta.c b/src/expr/meta.c
index 73f6efa..9790198 100644
--- a/src/expr/meta.c
+++ b/src/expr/meta.c
@@ -22,7 +22,7 @@
 #include <libnftnl/rule.h>
 
 #ifndef NFT_META_MAX
-#define NFT_META_MAX (NFT_META_BRI_IIFVPROTO + 1)
+#define NFT_META_MAX (NFT_META_TIME_HOUR + 1)
 #endif
 
 struct nftnl_expr_meta {
@@ -163,6 +163,9 @@ static const char *meta_key2str_array[NFT_META_MAX] = {
 	[NFT_META_OIFKIND]	= "oifkind",
 	[NFT_META_BRI_IIFPVID]	 = "bri_iifpvid",
 	[NFT_META_BRI_IIFVPROTO] = "bri_iifvproto",
+	[NFT_META_TIME_NS]	= "time",
+	[NFT_META_TIME_DAY]	= "day",
+	[NFT_META_TIME_HOUR]	= "hour",
 };
 
 static const char *meta_key2str(uint8_t key)
-- 
2.17.1


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

* [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known
  2019-08-17 11:32 [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known Ander Juaristi
@ 2019-08-17 11:32 ` Ander Juaristi
  2019-08-27 16:09   ` Pablo Neira Ayuso
  2019-08-27 12:11 ` [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known Pablo Neira Ayuso
  1 sibling, 1 reply; 4+ messages in thread
From: Ander Juaristi @ 2019-08-17 11:32 UTC (permalink / raw)
  To: netfilter-devel

Signed-off-by: Ander Juaristi <a@juaristi.eus>
---
 include/linux/netfilter/nf_tables.h | 1 +
 src/expr/dynset.c                   | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/linux/netfilter/nf_tables.h b/include/linux/netfilter/nf_tables.h
index 0222d08..75e083e 100644
--- a/include/linux/netfilter/nf_tables.h
+++ b/include/linux/netfilter/nf_tables.h
@@ -636,6 +636,7 @@ enum nft_lookup_attributes {
 enum nft_dynset_ops {
 	NFT_DYNSET_OP_ADD,
 	NFT_DYNSET_OP_UPDATE,
+	NFT_DYNSET_OP_DELETE,
 };
 
 enum nft_dynset_flags {
diff --git a/src/expr/dynset.c b/src/expr/dynset.c
index 68115ba..4870923 100644
--- a/src/expr/dynset.c
+++ b/src/expr/dynset.c
@@ -208,11 +208,12 @@ nftnl_expr_dynset_parse(struct nftnl_expr *e, struct nlattr *attr)
 static const char *op2str_array[] = {
 	[NFT_DYNSET_OP_ADD]		= "add",
 	[NFT_DYNSET_OP_UPDATE] 		= "update",
+	[NFT_DYNSET_OP_DELETE]		= "delete",
 };
 
 static const char *op2str(enum nft_dynset_ops op)
 {
-	if (op > NFT_DYNSET_OP_UPDATE)
+	if (op > NFT_DYNSET_OP_DELETE)
 		return "unknown";
 	return op2str_array[op];
 }
-- 
2.17.1


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

* Re: [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known
  2019-08-17 11:32 [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known Ander Juaristi
  2019-08-17 11:32 ` [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known Ander Juaristi
@ 2019-08-27 12:11 ` Pablo Neira Ayuso
  1 sibling, 0 replies; 4+ messages in thread
From: Pablo Neira Ayuso @ 2019-08-27 12:11 UTC (permalink / raw)
  To: Ander Juaristi; +Cc: netfilter-devel

Applied, thanks.

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

* Re: [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known
  2019-08-17 11:32 ` [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known Ander Juaristi
@ 2019-08-27 16:09   ` Pablo Neira Ayuso
  0 siblings, 0 replies; 4+ messages in thread
From: Pablo Neira Ayuso @ 2019-08-27 16:09 UTC (permalink / raw)
  To: Ander Juaristi; +Cc: netfilter-devel

Applied, thanks.

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

end of thread, other threads:[~2019-08-27 16:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-17 11:32 [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known Ander Juaristi
2019-08-17 11:32 ` [PATCH libnftnl v2 2/2] expr: meta: Make NFT_DYNSET_OP_DELETE known Ander Juaristi
2019-08-27 16:09   ` Pablo Neira Ayuso
2019-08-27 12:11 ` [PATCH libnftnl v2 1/2] expr: meta: Make NFT_META_TIME_{NS,DAY,HOUR} known 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).