From 4dc1ec47511dc593551d521c3126480cd69883f4 Mon Sep 17 00:00:00 2001 From: zxl hhyccc <45259624+zxlhhyccc@users.noreply.github.com> Date: Tue, 12 Nov 2024 20:51:53 +0800 Subject: [PATCH] libnftnl: adapt upstream update --- ...libnftnl-add-fullcone-expression-support.patch | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/package/libs/libnftnl/patches/001-libnftnl-add-fullcone-expression-support.patch b/package/libs/libnftnl/patches/001-libnftnl-add-fullcone-expression-support.patch index fd88e9b4c3..0cbb452a4c 100644 --- a/package/libs/libnftnl/patches/001-libnftnl-add-fullcone-expression-support.patch +++ b/package/libs/libnftnl/patches/001-libnftnl-add-fullcone-expression-support.patch @@ -66,7 +66,7 @@ Signed-off-by: Syrone Wong expr/socket.c \ --- /dev/null +++ b/src/expr/fullcone.c -@@ -0,0 +1,165 @@ +@@ -0,0 +1,172 @@ +/* + * (C) 2022 wongsyrone + * @@ -103,13 +103,13 @@ Signed-off-by: Syrone Wong + + switch (type) { + case NFTNL_EXPR_FULLCONE_FLAGS: -+ memcpy(&fullcone->flags, data, sizeof(fullcone->flags)); ++ memcpy(&fullcone->flags, data, data_len); + break; + case NFTNL_EXPR_FULLCONE_REG_PROTO_MIN: -+ memcpy(&fullcone->sreg_proto_min, data, sizeof(fullcone->sreg_proto_min)); ++ memcpy(&fullcone->sreg_proto_min, data, data_len); + break; + case NFTNL_EXPR_FULLCONE_REG_PROTO_MAX: -+ memcpy(&fullcone->sreg_proto_max, data, sizeof(fullcone->sreg_proto_max)); ++ memcpy(&fullcone->sreg_proto_max, data, data_len); + break; + } + return 0; @@ -222,10 +222,17 @@ Signed-off-by: Syrone Wong + return offset; +} + ++static struct attr_policy fullcone_attr_policy[__NFTNL_EXPR_FULLCONE_MAX] = { ++ [NFTNL_EXPR_FULLCONE_FLAGS] = { .maxlen = sizeof(uint32_t) }, ++ [NFTNL_EXPR_FULLCONE_REG_PROTO_MIN] = { .maxlen = sizeof(uint32_t) }, ++ [NFTNL_EXPR_FULLCONE_REG_PROTO_MAX] = { .maxlen = sizeof(uint32_t) }, ++}; ++ +struct expr_ops expr_ops_fullcone = { + .name = "fullcone", + .alloc_len = sizeof(struct nftnl_expr_fullcone), + .nftnl_max_attr = __NFTNL_EXPR_FULLCONE_MAX - 1, ++ .attr_policy = fullcone_attr_policy, + .set = nftnl_expr_fullcone_set, + .get = nftnl_expr_fullcone_get, + .parse = nftnl_expr_fullcone_parse,