summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/expr/match.c4
-rw-r--r--src/expr/target.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/expr/match.c b/src/expr/match.c
index 9f2fa03..a65d3e5 100644
--- a/src/expr/match.c
+++ b/src/expr/match.c
@@ -42,8 +42,8 @@ nft_rule_expr_match_set(struct nft_rule_expr *e, uint16_t type,
switch(type) {
case NFT_EXPR_MT_NAME:
- memcpy(mt->name, data, XT_EXTENSION_MAXNAMELEN);
- mt->name[XT_EXTENSION_MAXNAMELEN-1] = '\0';
+ snprintf(mt->name, sizeof(mt->name), "%.*s", data_len,
+ (const char *)data);
break;
case NFT_EXPR_MT_REV:
mt->rev = *((uint32_t *)data);
diff --git a/src/expr/target.c b/src/expr/target.c
index 36e37de..ff0e56f 100644
--- a/src/expr/target.c
+++ b/src/expr/target.c
@@ -42,8 +42,8 @@ nft_rule_expr_target_set(struct nft_rule_expr *e, uint16_t type,
switch(type) {
case NFT_EXPR_TG_NAME:
- memcpy(tg->name, data, XT_EXTENSION_MAXNAMELEN);
- tg->name[XT_EXTENSION_MAXNAMELEN-1] = '\0';
+ snprintf(tg->name, sizeof(tg->name), "%.*s", data_len,
+ (const char *) data);
break;
case NFT_EXPR_TG_REV:
tg->rev = *((uint32_t *)data);