aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/uapi/linux/audit.h17
-rw-r--r--kernel/audit.c2
2 files changed, 14 insertions, 5 deletions
diff --git a/include/uapi/linux/audit.h b/include/uapi/linux/audit.h
index 4d100c841c80..2ccf19e06e15 100644
--- a/include/uapi/linux/audit.h
+++ b/include/uapi/linux/audit.h
@@ -322,9 +322,15 @@ enum {
322#define AUDIT_STATUS_BACKLOG_LIMIT 0x0010 322#define AUDIT_STATUS_BACKLOG_LIMIT 0x0010
323#define AUDIT_STATUS_BACKLOG_WAIT_TIME 0x0020 323#define AUDIT_STATUS_BACKLOG_WAIT_TIME 0x0020
324 324
325#define AUDIT_VERSION_BACKLOG_LIMIT 1 325#define AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT 0x00000001
326#define AUDIT_VERSION_BACKLOG_WAIT_TIME 2 326#define AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME 0x00000002
327#define AUDIT_VERSION_LATEST AUDIT_VERSION_BACKLOG_WAIT_TIME 327#define AUDIT_FEATURE_BITMAP_ALL (AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT | \
328 AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME)
329
330/* deprecated: AUDIT_VERSION_* */
331#define AUDIT_VERSION_LATEST AUDIT_FEATURE_BITMAP_ALL
332#define AUDIT_VERSION_BACKLOG_LIMIT AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT
333#define AUDIT_VERSION_BACKLOG_WAIT_TIME AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME
328 334
329 /* Failure-to-log actions */ 335 /* Failure-to-log actions */
330#define AUDIT_FAIL_SILENT 0 336#define AUDIT_FAIL_SILENT 0
@@ -403,7 +409,10 @@ struct audit_status {
403 __u32 backlog_limit; /* waiting messages limit */ 409 __u32 backlog_limit; /* waiting messages limit */
404 __u32 lost; /* messages lost */ 410 __u32 lost; /* messages lost */
405 __u32 backlog; /* messages waiting in queue */ 411 __u32 backlog; /* messages waiting in queue */
406 __u32 version; /* audit api version number */ 412 union {
413 __u32 version; /* deprecated: audit api version num */
414 __u32 feature_bitmap; /* bitmap of kernel audit features */
415 };
407 __u32 backlog_wait_time;/* message queue wait timeout */ 416 __u32 backlog_wait_time;/* message queue wait timeout */
408}; 417};
409 418
diff --git a/kernel/audit.c b/kernel/audit.c
index 53bb39bf79e2..7b83c557aee6 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -842,7 +842,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
842 s.backlog_limit = audit_backlog_limit; 842 s.backlog_limit = audit_backlog_limit;
843 s.lost = atomic_read(&audit_lost); 843 s.lost = atomic_read(&audit_lost);
844 s.backlog = skb_queue_len(&audit_skb_queue); 844 s.backlog = skb_queue_len(&audit_skb_queue);
845 s.version = AUDIT_VERSION_LATEST; 845 s.feature_bitmap = AUDIT_FEATURE_BITMAP_ALL;
846 s.backlog_wait_time = audit_backlog_wait_time; 846 s.backlog_wait_time = audit_backlog_wait_time;
847 audit_send_reply(skb, seq, AUDIT_GET, 0, 0, &s, sizeof(s)); 847 audit_send_reply(skb, seq, AUDIT_GET, 0, 0, &s, sizeof(s));
848 break; 848 break;