From: Thomas Haller Date: Tue, 29 Aug 2023 12:53:35 +0000 (+0200) Subject: evaluate: don't needlessly clear full string buffer in stmt_evaluate_log_prefix() X-Git-Tag: v1.0.9~165 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=05acd523d1633223648d3bec35b002d5eed6fbb2;p=thirdparty%2Fnftables.git evaluate: don't needlessly clear full string buffer in stmt_evaluate_log_prefix() Signed-off-by: Thomas Haller Signed-off-by: Pablo Neira Ayuso --- diff --git a/src/evaluate.c b/src/evaluate.c index 83c4b045..c13be824 100644 --- a/src/evaluate.c +++ b/src/evaluate.c @@ -4125,7 +4125,8 @@ static int stmt_evaluate_queue(struct eval_ctx *ctx, struct stmt *stmt) static int stmt_evaluate_log_prefix(struct eval_ctx *ctx, struct stmt *stmt) { - char prefix[NF_LOG_PREFIXLEN] = {}, tmp[NF_LOG_PREFIXLEN] = {}; + char tmp[NF_LOG_PREFIXLEN] = {}; + char prefix[NF_LOG_PREFIXLEN]; size_t len = sizeof(prefix); size_t offset = 0; struct expr *expr; @@ -4133,6 +4134,8 @@ static int stmt_evaluate_log_prefix(struct eval_ctx *ctx, struct stmt *stmt) if (stmt->log.prefix->etype != EXPR_LIST) return 0; + prefix[0] = '\0'; + list_for_each_entry(expr, &stmt->log.prefix->expressions, list) { int ret;