Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/audit
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Dec 2014 21:41:28 +0000 (13:41 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Dec 2014 21:41:28 +0000 (13:41 -0800)
Pull audit updates from Paul Moore:
 "Two small patches from the audit next branch; only one of which has
  any real significant code changes, the other is simply a MAINTAINERS
  update for audit.

  The single code patch is pretty small and rather straightforward, it
  changes the audit "version" number reported to userspace from an
  integer to a bitmap which is used to indicate the functionality of the
  running kernel.  This really doesn't have much impact on the kernel,
  but it will make life easier for the audit userspace folks.

  Thankfully we were still on a version number which allowed us to do
  this without breaking userspace"

* 'upstream' of git://git.infradead.org/users/pcmoore/audit:
  audit: convert status version to a feature bitmap
  audit: add Paul Moore to the MAINTAINERS entry

MAINTAINERS
include/uapi/linux/audit.h
kernel/audit.c

index 1f0ef48..f273cb5 100644 (file)
@@ -1801,10 +1801,11 @@ S:      Supported
 F:     drivers/scsi/esas2r
 
 AUDIT SUBSYSTEM
+M:     Paul Moore <paul@paul-moore.com>
 M:     Eric Paris <eparis@redhat.com>
-L:     linux-audit@redhat.com (subscribers-only)
+L:     linux-audit@redhat.com (moderated for non-subscribers)
 W:     http://people.redhat.com/sgrubb/audit/
-T:     git git://git.infradead.org/users/eparis/audit.git
+T:     git git://git.infradead.org/users/pcmoore/audit
 S:     Maintained
 F:     include/linux/audit.h
 F:     include/uapi/linux/audit.h
index d4dbef1..12e2668 100644 (file)
@@ -322,9 +322,15 @@ enum {
 #define AUDIT_STATUS_BACKLOG_LIMIT     0x0010
 #define AUDIT_STATUS_BACKLOG_WAIT_TIME 0x0020
 
-#define AUDIT_VERSION_BACKLOG_LIMIT    1
-#define AUDIT_VERSION_BACKLOG_WAIT_TIME        2
-#define AUDIT_VERSION_LATEST AUDIT_VERSION_BACKLOG_WAIT_TIME
+#define AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT     0x00000001
+#define AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME 0x00000002
+#define AUDIT_FEATURE_BITMAP_ALL (AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT | \
+                                 AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME)
+
+/* deprecated: AUDIT_VERSION_* */
+#define AUDIT_VERSION_LATEST           AUDIT_FEATURE_BITMAP_ALL
+#define AUDIT_VERSION_BACKLOG_LIMIT    AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT
+#define AUDIT_VERSION_BACKLOG_WAIT_TIME        AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME
 
                                /* Failure-to-log actions */
 #define AUDIT_FAIL_SILENT      0
@@ -404,7 +410,10 @@ struct audit_status {
        __u32           backlog_limit;  /* waiting messages limit */
        __u32           lost;           /* messages lost */
        __u32           backlog;        /* messages waiting in queue */
-       __u32           version;        /* audit api version number */
+       union {
+               __u32   version;        /* deprecated: audit api version num */
+               __u32   feature_bitmap; /* bitmap of kernel audit features */
+       };
        __u32           backlog_wait_time;/* message queue wait timeout */
 };
 
index 1f37f15..f8f203e 100644 (file)
@@ -833,7 +833,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
                s.backlog_limit         = audit_backlog_limit;
                s.lost                  = atomic_read(&audit_lost);
                s.backlog               = skb_queue_len(&audit_skb_queue);
-               s.version               = AUDIT_VERSION_LATEST;
+               s.feature_bitmap        = AUDIT_FEATURE_BITMAP_ALL;
                s.backlog_wait_time     = audit_backlog_wait_time;
                audit_send_reply(skb, seq, AUDIT_GET, 0, 0, &s, sizeof(s));
                break;