]> git.dujemihanovic.xyz Git - linux.git/commitdiff
netfilter: nfnetlink: Initialise extack before use in ACKs
authorDonald Hunter <donald.hunter@gmail.com>
Tue, 6 Aug 2024 15:43:24 +0000 (16:43 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Wed, 14 Aug 2024 21:27:38 +0000 (23:27 +0200)
Add missing extack initialisation when ACKing BATCH_BEGIN and BATCH_END.

Fixes: bf2ac490d28c ("netfilter: nfnetlink: Handle ACK flags for batch messages")
Signed-off-by: Donald Hunter <donald.hunter@gmail.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nfnetlink.c

index 4abf660c7baff01a361edaa8392edf2fac48f340..932b3ddb34f13c44333b32abd534b12f1d12955d 100644 (file)
@@ -427,8 +427,10 @@ replay_abort:
 
        nfnl_unlock(subsys_id);
 
-       if (nlh->nlmsg_flags & NLM_F_ACK)
+       if (nlh->nlmsg_flags & NLM_F_ACK) {
+               memset(&extack, 0, sizeof(extack));
                nfnl_err_add(&err_list, nlh, 0, &extack);
+       }
 
        while (skb->len >= nlmsg_total_size(0)) {
                int msglen, type;
@@ -577,6 +579,7 @@ done:
                        ss->abort(net, oskb, NFNL_ABORT_NONE);
                        netlink_ack(oskb, nlmsg_hdr(oskb), err, NULL);
                } else if (nlh->nlmsg_flags & NLM_F_ACK) {
+                       memset(&extack, 0, sizeof(extack));
                        nfnl_err_add(&err_list, nlh, 0, &extack);
                }
        } else {