summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@shinybook.infradead.org>2005-06-21 16:22:01 +0100
committerDavid Woodhouse <dwmw2@shinybook.infradead.org>2005-06-21 16:22:01 +0100
commitf6a789d19858a951e7ff9e297a44b377c21b6c33 (patch)
tree5e54f1460bc048706ad6df8c5cb5bf748f067f13 /include/linux
parentae7b961b1c943367dfe179411f120d7bf8eaba89 (diff)
downloadlinux-stable-f6a789d19858a951e7ff9e297a44b377c21b6c33.tar.gz
linux-stable-f6a789d19858a951e7ff9e297a44b377c21b6c33.tar.bz2
linux-stable-f6a789d19858a951e7ff9e297a44b377c21b6c33.zip
AUDIT: Spawn kernel thread to list filter rules.
If we have enough rules to fill the netlink buffer space, it'll deadlock because auditctl isn't ever actually going to read from the socket until we return, and we aren't going to return until it reads... so we spawn a kernel thread to spew out the list and then exit. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/audit.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h
index 5f812e4d01e4..5d1a9dda5acb 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -281,6 +281,7 @@ extern void audit_send_reply(int pid, int seq, int type,
int done, int multi,
void *payload, int size);
extern void audit_log_lost(const char *message);
+extern struct semaphore audit_netlink_sem;
#else
#define audit_log(c,t,f,...) do { ; } while (0)
#define audit_log_start(c,t) ({ NULL; })