aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/audit.h7
-rw-r--r--net/core/dev.c7
2 files changed, 13 insertions, 1 deletions
diff --git a/include/linux/audit.h b/include/linux/audit.h
index d760430c8de3..1c47c59058c1 100644
--- a/include/linux/audit.h
+++ b/include/linux/audit.h
@@ -35,7 +35,8 @@
35 * 1400 - 1499 SE Linux use 35 * 1400 - 1499 SE Linux use
36 * 1500 - 1599 kernel LSPP events 36 * 1500 - 1599 kernel LSPP events
37 * 1600 - 1699 kernel crypto events 37 * 1600 - 1699 kernel crypto events
38 * 1700 - 1999 future kernel use (maybe integrity labels and related events) 38 * 1700 - 1799 kernel anomaly records
39 * 1800 - 1999 future kernel use (maybe integrity labels and related events)
39 * 2000 is for otherwise unclassified kernel audit messages (legacy) 40 * 2000 is for otherwise unclassified kernel audit messages (legacy)
40 * 2001 - 2099 unused (kernel) 41 * 2001 - 2099 unused (kernel)
41 * 2100 - 2199 user space anomaly records 42 * 2100 - 2199 user space anomaly records
@@ -90,6 +91,10 @@
90#define AUDIT_MAC_STATUS 1404 /* Changed enforcing,permissive,off */ 91#define AUDIT_MAC_STATUS 1404 /* Changed enforcing,permissive,off */
91#define AUDIT_MAC_CONFIG_CHANGE 1405 /* Changes to booleans */ 92#define AUDIT_MAC_CONFIG_CHANGE 1405 /* Changes to booleans */
92 93
94#define AUDIT_FIRST_KERN_ANOM_MSG 1700
95#define AUDIT_LAST_KERN_ANOM_MSG 1799
96#define AUDIT_ANOM_PROMISCUOUS 1700 /* Device changed promiscuous mode */
97
93#define AUDIT_KERNEL 2000 /* Asynchronous audit record. NOT A REQUEST. */ 98#define AUDIT_KERNEL 2000 /* Asynchronous audit record. NOT A REQUEST. */
94 99
95/* Rule flags */ 100/* Rule flags */
diff --git a/net/core/dev.c b/net/core/dev.c
index 2afb0de95329..e9f84a66ce81 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -115,6 +115,7 @@
115#include <net/iw_handler.h> 115#include <net/iw_handler.h>
116#endif /* CONFIG_NET_RADIO */ 116#endif /* CONFIG_NET_RADIO */
117#include <asm/current.h> 117#include <asm/current.h>
118#include <linux/audit.h>
118 119
119/* 120/*
120 * The list of packet types we will receive (as opposed to discard) 121 * The list of packet types we will receive (as opposed to discard)
@@ -2120,6 +2121,12 @@ void dev_set_promiscuity(struct net_device *dev, int inc)
2120 printk(KERN_INFO "device %s %s promiscuous mode\n", 2121 printk(KERN_INFO "device %s %s promiscuous mode\n",
2121 dev->name, (dev->flags & IFF_PROMISC) ? "entered" : 2122 dev->name, (dev->flags & IFF_PROMISC) ? "entered" :
2122 "left"); 2123 "left");
2124 audit_log(current->audit_context, GFP_ATOMIC,
2125 AUDIT_ANOM_PROMISCUOUS,
2126 "dev=%s prom=%d old_prom=%d auid=%u",
2127 dev->name, (dev->flags & IFF_PROMISC),
2128 (old_flags & IFF_PROMISC),
2129 audit_get_loginuid(current->audit_context));
2123 } 2130 }
2124} 2131}
2125 2132