Merge tag 'audit-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoor...
[linux-block.git] / kernel / auditfilter.c
index 4173e771650c8beea749484623b8f5a5824cbfc5..42d99896e7a6ec9969f6b44fd6f3dd06be767aed 100644 (file)
@@ -637,7 +637,7 @@ static struct audit_rule_data *audit_krule_to_data(struct audit_krule *krule)
        void *bufp;
        int i;
 
-       data = kmalloc(sizeof(*data) + krule->buflen, GFP_KERNEL);
+       data = kmalloc(struct_size(data, buf, krule->buflen), GFP_KERNEL);
        if (unlikely(!data))
                return NULL;
        memset(data, 0, sizeof(*data));
@@ -1092,7 +1092,7 @@ static void audit_list_rules(int seq, struct sk_buff_head *q)
                                break;
                        skb = audit_make_reply(seq, AUDIT_LIST_RULES, 0, 1,
                                               data,
-                                              sizeof(*data) + data->buflen);
+                                              struct_size(data, buf, data->buflen));
                        if (skb)
                                skb_queue_tail(q, skb);
                        kfree(data);