summaryrefslogtreecommitdiffstats
path: root/security/selinux/include
diff options
context:
space:
mode:
authorEric Paris <eparis@parisplace.org>2006-07-10 04:43:53 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-07-10 13:24:13 -0700
commitc312feb2931ded0582378712727b7ea017a951bd (patch)
treedd985aa4dd0b759690af9557a5170dabf589d87f /security/selinux/include
parent2ed6e34f88a0d896a6f889b00693cae0fadacfd0 (diff)
downloadkernel-crypto-c312feb2931ded0582378712727b7ea017a951bd.tar.gz
kernel-crypto-c312feb2931ded0582378712727b7ea017a951bd.tar.xz
kernel-crypto-c312feb2931ded0582378712727b7ea017a951bd.zip
[PATCH] SELinux: decouple fscontext/context mount options
Remove the conflict between fscontext and context mount options. If context= is specified without fscontext it will operate just as before, if both are specified we will use mount point labeling and all inodes will get the label specified by context=. The superblock will be labeled with the label of fscontext=, thus affecting operations which check the superblock security context, such as associate permissions. Signed-off-by: Eric Paris <eparis@parisplace.org> Acked-by: Stephen Smalley <sds@tycho.nsa.gov> Signed-off-by: James Morris <jmorris@namei.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'security/selinux/include')
-rw-r--r--security/selinux/include/objsec.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/security/selinux/include/objsec.h b/security/selinux/include/objsec.h
index cf54a304169..940178865fc 100644
--- a/security/selinux/include/objsec.h
+++ b/security/selinux/include/objsec.h
@@ -57,8 +57,9 @@ struct file_security_struct {
struct superblock_security_struct {
struct super_block *sb; /* back pointer to sb object */
struct list_head list; /* list of superblock_security_struct */
- u32 sid; /* SID of file system */
+ u32 sid; /* SID of file system superblock */
u32 def_sid; /* default SID for labeling */
+ u32 mntpoint_sid; /* SECURITY_FS_USE_MNTPOINT context for files */
unsigned int behavior; /* labeling behavior */
unsigned char initialized; /* initialization flag */
unsigned char proc; /* proc fs */