]> err.no Git - linux-2.6/blobdiff - kernel/audit.h
[PATCH] RTC subsystem: VR41XX driver
[linux-2.6] / kernel / audit.h
index 7643e46daeb23f154a4c4fd1222850bdb624364d..bc5392076e2be43349caa39ad5c42b2ea1520fd6 100644 (file)
@@ -19,6 +19,7 @@
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
+#include <linux/mutex.h>
 #include <linux/fs.h>
 #include <linux/audit.h>
 
@@ -52,10 +53,27 @@ enum audit_state {
 };
 
 /* Rule lists */
+struct audit_field {
+       u32                     type;
+       u32                     val;
+       u32                     op;
+};
+
+struct audit_krule {
+       int                     vers_ops;
+       u32                     flags;
+       u32                     listnr;
+       u32                     action;
+       u32                     mask[AUDIT_BITMASK_SIZE];
+       u32                     buflen; /* for data alloc on list rules */
+       u32                     field_count;
+       struct audit_field      *fields;
+};
+
 struct audit_entry {
-       struct list_head  list;
-       struct rcu_head   rcu;
-       struct audit_rule rule;
+       struct list_head        list;
+       struct rcu_head         rcu;
+       struct audit_krule      rule;
 };
 
 
@@ -67,4 +85,4 @@ extern void               audit_send_reply(int pid, int seq, int type,
                                             void *payload, int size);
 extern void                audit_log_lost(const char *message);
 extern void                audit_panic(const char *message);
-extern struct semaphore audit_netlink_sem;
+extern struct mutex audit_netlink_mutex;