[PATCH] SELinux: default labeling of MLS field
authorJames Morris <jmorris@redhat.com>
Thu, 28 Jul 2005 08:07:37 +0000 (01:07 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Thu, 28 Jul 2005 15:39:02 +0000 (08:39 -0700)
commitf5c1d5b2aaf9a98f15a6dcdfbba1f494d0aaae52
treee896d0b6b9f561c9d124fa81efd261518ccbddf4
parente1699f508ab5098de4b258268fa8913db38d9d35
[PATCH] SELinux: default labeling of MLS field

Implement kernel labeling of the MLS (multilevel security) field of
security contexts for files which have no existing MLS field.  This is to
enable upgrades of a system from non-MLS to MLS without performing a full
filesystem relabel including all of the mountpoints, which would be quite
painful for users.

With this patch, with MLS enabled, if a file has no MLS field, the kernel
internally adds an MLS field to the in-core inode (but not to the on-disk
file).  This MLS field added is the default for the superblock, allowing
per-mountpoint control over the values via fixed policy or mount options.

This patch has been tested by enabling MLS without relabeling its
filesystem, and seems to be working correctly.

Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Stephen Smalley <sds@epoch.ncsc.mil>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
security/selinux/hooks.c
security/selinux/include/security.h
security/selinux/ss/mls.c
security/selinux/ss/mls.h
security/selinux/ss/services.c