diff options
Diffstat (limited to 'security/selinux/hooks.c')
-rw-r--r-- | security/selinux/hooks.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 86305c2f555a..7cd4c3affac8 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c | |||
@@ -1740,7 +1740,7 @@ static inline u32 file_mask_to_av(int mode, int mask) | |||
1740 | { | 1740 | { |
1741 | u32 av = 0; | 1741 | u32 av = 0; |
1742 | 1742 | ||
1743 | if ((mode & S_IFMT) != S_IFDIR) { | 1743 | if (!S_ISDIR(mode)) { |
1744 | if (mask & MAY_EXEC) | 1744 | if (mask & MAY_EXEC) |
1745 | av |= FILE__EXECUTE; | 1745 | av |= FILE__EXECUTE; |
1746 | if (mask & MAY_READ) | 1746 | if (mask & MAY_READ) |
@@ -2507,7 +2507,7 @@ static int selinux_mount(char *dev_name, | |||
2507 | const struct cred *cred = current_cred(); | 2507 | const struct cred *cred = current_cred(); |
2508 | 2508 | ||
2509 | if (flags & MS_REMOUNT) | 2509 | if (flags & MS_REMOUNT) |
2510 | return superblock_has_perm(cred, path->mnt->mnt_sb, | 2510 | return superblock_has_perm(cred, path->dentry->d_sb, |
2511 | FILESYSTEM__REMOUNT, NULL); | 2511 | FILESYSTEM__REMOUNT, NULL); |
2512 | else | 2512 | else |
2513 | return path_has_perm(cred, path, FILE__MOUNTON); | 2513 | return path_has_perm(cred, path, FILE__MOUNTON); |
@@ -2598,7 +2598,7 @@ static int selinux_inode_init_security(struct inode *inode, struct inode *dir, | |||
2598 | return 0; | 2598 | return 0; |
2599 | } | 2599 | } |
2600 | 2600 | ||
2601 | static int selinux_inode_create(struct inode *dir, struct dentry *dentry, int mask) | 2601 | static int selinux_inode_create(struct inode *dir, struct dentry *dentry, umode_t mode) |
2602 | { | 2602 | { |
2603 | return may_create(dir, dentry, SECCLASS_FILE); | 2603 | return may_create(dir, dentry, SECCLASS_FILE); |
2604 | } | 2604 | } |
@@ -2618,7 +2618,7 @@ static int selinux_inode_symlink(struct inode *dir, struct dentry *dentry, const | |||
2618 | return may_create(dir, dentry, SECCLASS_LNK_FILE); | 2618 | return may_create(dir, dentry, SECCLASS_LNK_FILE); |
2619 | } | 2619 | } |
2620 | 2620 | ||
2621 | static int selinux_inode_mkdir(struct inode *dir, struct dentry *dentry, int mask) | 2621 | static int selinux_inode_mkdir(struct inode *dir, struct dentry *dentry, umode_t mask) |
2622 | { | 2622 | { |
2623 | return may_create(dir, dentry, SECCLASS_DIR); | 2623 | return may_create(dir, dentry, SECCLASS_DIR); |
2624 | } | 2624 | } |
@@ -2628,7 +2628,7 @@ static int selinux_inode_rmdir(struct inode *dir, struct dentry *dentry) | |||
2628 | return may_link(dir, dentry, MAY_RMDIR); | 2628 | return may_link(dir, dentry, MAY_RMDIR); |
2629 | } | 2629 | } |
2630 | 2630 | ||
2631 | static int selinux_inode_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t dev) | 2631 | static int selinux_inode_mknod(struct inode *dir, struct dentry *dentry, umode_t mode, dev_t dev) |
2632 | { | 2632 | { |
2633 | return may_create(dir, dentry, inode_mode_to_security_class(mode)); | 2633 | return may_create(dir, dentry, inode_mode_to_security_class(mode)); |
2634 | } | 2634 | } |