|
@@ -387,8 +387,6 @@ static int sb_finish_set_opts(struct super_block *sb)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- sbsec->flags |= (SE_SBINITIALIZED | SBLABEL_MNT);
|
|
|
-
|
|
|
if (sbsec->behavior > ARRAY_SIZE(labeling_behaviors))
|
|
|
printk(KERN_ERR "SELinux: initialized (dev %s, type %s), unknown behavior\n",
|
|
|
sb->s_id, sb->s_type->name);
|
|
@@ -397,11 +395,11 @@ static int sb_finish_set_opts(struct super_block *sb)
|
|
|
sb->s_id, sb->s_type->name,
|
|
|
labeling_behaviors[sbsec->behavior-1]);
|
|
|
|
|
|
- if (sbsec->behavior == SECURITY_FS_USE_GENFS ||
|
|
|
- sbsec->behavior == SECURITY_FS_USE_MNTPOINT ||
|
|
|
- sbsec->behavior == SECURITY_FS_USE_NONE ||
|
|
|
- sbsec->behavior > ARRAY_SIZE(labeling_behaviors))
|
|
|
- sbsec->flags &= ~SBLABEL_MNT;
|
|
|
+ sbsec->flags |= SE_SBINITIALIZED;
|
|
|
+ if (sbsec->behavior == SECURITY_FS_USE_XATTR ||
|
|
|
+ sbsec->behavior == SECURITY_FS_USE_TRANS ||
|
|
|
+ sbsec->behavior == SECURITY_FS_USE_TASK)
|
|
|
+ sbsec->flags |= SBLABEL_MNT;
|
|
|
|
|
|
/* Special handling for sysfs. Is genfs but also has setxattr handler*/
|
|
|
if (strncmp(sb->s_type->name, "sysfs", sizeof("sysfs")) == 0)
|