提交 8e0cd952 编写于 作者: L Linus Torvalds

Merge tag 'audit-pr-20210830' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit

Pull audit updates from Paul Moore:
 "Two patches in the audit pull request for v5.15; one is trivial
  ("header protection") but the second is a real patch that fixes a
  refcounting problem.

  The refcount fix normally would have been sent up during the -rcX
  cycle, but since we merged it less than a week before v5.14 proper I
  felt it was better to wait for the merge window to open; the patch is
  marked with the usual -stable markings"

* tag 'audit-pr-20210830' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
  audit: move put_tree() to avoid trim_trees refcount underflow and UAF
  audit: add header protection to kernel/audit.h
...@@ -6,6 +6,9 @@ ...@@ -6,6 +6,9 @@
* Copyright 2005 IBM Corporation * Copyright 2005 IBM Corporation
*/ */
#ifndef _KERNEL_AUDIT_H_
#define _KERNEL_AUDIT_H_
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/audit.h> #include <linux/audit.h>
#include <linux/skbuff.h> #include <linux/skbuff.h>
...@@ -331,3 +334,5 @@ extern int audit_filter(int msgtype, unsigned int listtype); ...@@ -331,3 +334,5 @@ extern int audit_filter(int msgtype, unsigned int listtype);
extern void audit_ctl_lock(void); extern void audit_ctl_lock(void);
extern void audit_ctl_unlock(void); extern void audit_ctl_unlock(void);
#endif
...@@ -593,7 +593,6 @@ static void prune_tree_chunks(struct audit_tree *victim, bool tagged) ...@@ -593,7 +593,6 @@ static void prune_tree_chunks(struct audit_tree *victim, bool tagged)
spin_lock(&hash_lock); spin_lock(&hash_lock);
} }
spin_unlock(&hash_lock); spin_unlock(&hash_lock);
put_tree(victim);
} }
/* /*
...@@ -602,6 +601,7 @@ static void prune_tree_chunks(struct audit_tree *victim, bool tagged) ...@@ -602,6 +601,7 @@ static void prune_tree_chunks(struct audit_tree *victim, bool tagged)
static void prune_one(struct audit_tree *victim) static void prune_one(struct audit_tree *victim)
{ {
prune_tree_chunks(victim, false); prune_tree_chunks(victim, false);
put_tree(victim);
} }
/* trim the uncommitted chunks from tree */ /* trim the uncommitted chunks from tree */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册