lsm: constify 'sb' parameter in security_quotactl()
Subsystems (2)
PATCH 1/1 lsm: constify 'sb' parameter in security_quotactl()
SELinux registers the implementation for the "quotactl" hook. Looking at the function implementation we observe that the parameter "sb" is not changing.
Mark the "sb" parameter of LSM hook security_quotactl() as "const" since it will not be changing in the LSM hook.
Signed-off-by Khadija Kamran <[email protected]>
--- include/linux/lsm_hook_defs.h | 2 +- include/linux/security.h | 4 ++-- security/security.c | 2 +- security/selinux/hooks.c | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-)
include/linux/lsm_hook_defs.h +1 -1
@@ -43,7 +43,7 @@ LSM_HOOK(int, 0, capset, struct cred *new, const struct cred *old, const kernel_cap_t *permitted) LSM_HOOK(int, 0, capable, const struct cred *cred, struct user_namespace *ns, int cap, unsigned int opts) -LSM_HOOK(int, 0, quotactl, int cmds, int type, int id, struct super_block *sb) +LSM_HOOK(int, 0, quotactl, int cmds, int type, int id, const struct super_block *sb) LSM_HOOK(int, 0, quota_on, struct dentry *dentry) LSM_HOOK(int, 0, syslog, int type) LSM_HOOK(int, 0, settime, const struct timespec64 *ts,
include/linux/security.h +2 -2
@@ -283,7 +283,7 @@ int security_capable(const struct cred *cred,struct user_namespace *ns, int cap, unsigned int opts); -int security_quotactl (int cmds,int type,int id,struct super_block *sb); +int security_quotactl (int cmds,int type,int id,const struct super_block *sb);int security_quota_on (struct dentry *dentry);int security_syslog (int type);int security_settime64 (const struct timespec64 *ts,const struct timezone *tz);
@@ -579,7 +579,7 @@ static inline int security_capable(const struct cred *cred, }static inline int security_quotactl (int cmds,int type,int id, -struct super_block *sb) +const struct super_block *sb) {return 0 ; }
security/security.c +1 -1
@@ -956,7 +956,7 @@ int security_capable(const struct cred *cred,* * Return: Returns 0 if permission is granted. */ -int security_quotactl (int cmds,int type,int id,struct super_block *sb) +int security_quotactl (int cmds,int type,int id,const struct super_block *sb) {return call_int_hook (quotactl,0 , cmds, type, id, sb); }
security/selinux/hooks.c +2 -2
@@ -1886,7 +1886,7 @@ static inline int may_rename(struct inode *old_dir,/* Check whether a task can perform a filesystem operation. */ static int superblock_has_perm (const struct cred *cred, -struct super_block *sb, +const struct super_block *sb,u32 perms,struct common_audit_data *ad) {
@@ -2088,7 +2088,7 @@ static int selinux_capable(const struct cred *cred, struct user_namespace *ns,return cred_has_capability (cred, cap, opts, ns == &init_user_ns); } -static int selinux_quotactl (int cmds,int type,int id,struct super_block *sb) +static int selinux_quotactl (int cmds,int type,int id,const struct super_block *sb) {const struct cred *cred =current_cred ();int rc =0 ;
Signature · 1 line
2.34.1
Paul Moore
maintainerQuoted 8 lines · On Aug 23, 2023 Khadija Kamran <[email protected]> wrote:
SELinux registers the implementation for the "quotactl" hook. Looking at the function implementation we observe that the parameter "sb" is not changing.
Mark the "sb" parameter of LSM hook
security_quotactl()as "const" since it will not be changing in the LSM hook.
Quoted 7 lines
Signed-off-by Khadija Kamran <[email protected]>--- include/linux/lsm_hook_defs.h | 2 +- include/linux/security.h | 4 ++-- security/security.c | 2 +- security/selinux/hooks.c | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-)
Looks good to me, merged into lsm/next. Thanks!
--
paul-moore.com