aboutsummaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorSerge E. Hallyn <[email protected]>2010-11-25 17:11:32 +0000
committerJames Morris <[email protected]>2010-11-29 08:35:12 +1100
commitce6ada35bdf710d16582cc4869c26722547e6f11 (patch)
treec2b5fd46c883f4b7285b191bac55940022662b43 /include/linux
parent1d6d75684d869406e5bb2ac5d3ed9454f52d0cab (diff)
security: Define CAP_SYSLOG
Privileged syslog operations currently require CAP_SYS_ADMIN. Split this off into a new CAP_SYSLOG privilege which we can sanely take away from a container through the capability bounding set. With this patch, an lxc container can be prevented from messing with the host's syslog (i.e. dmesg -c). Changelog: mar 12 2010: add selinux capability2:cap_syslog perm Changelog: nov 22 2010: . port to new kernel . add a WARN_ONCE if userspace isn't using CAP_SYSLOG Signed-off-by: Serge Hallyn <[email protected]> Acked-by: Andrew G. Morgan <[email protected]> Acked-By: Kees Cook <[email protected]> Cc: James Morris <[email protected]> Cc: Michael Kerrisk <[email protected]> Cc: Stephen Smalley <[email protected]> Cc: "Christopher J. PeBenito" <[email protected]> Cc: Eric Paris <[email protected]> Signed-off-by: James Morris <[email protected]>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/capability.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/linux/capability.h b/include/linux/capability.h
index 90012b9ddbf3..fb16a3699b99 100644
--- a/include/linux/capability.h
+++ b/include/linux/capability.h
@@ -246,7 +246,6 @@ struct cpu_vfs_cap_data {
/* Allow configuration of the secure attention key */
/* Allow administration of the random device */
/* Allow examination and configuration of disk quotas */
-/* Allow configuring the kernel's syslog (printk behaviour) */
/* Allow setting the domainname */
/* Allow setting the hostname */
/* Allow calling bdflush() */
@@ -352,7 +351,11 @@ struct cpu_vfs_cap_data {
#define CAP_MAC_ADMIN 33
-#define CAP_LAST_CAP CAP_MAC_ADMIN
+/* Allow configuring the kernel's syslog (printk behaviour) */
+
+#define CAP_SYSLOG 34
+
+#define CAP_LAST_CAP CAP_SYSLOG
#define cap_valid(x) ((x) >= 0 && (x) <= CAP_LAST_CAP)