diff options
author | Christian Göttsche <cgzones@googlemail.com> | 2022-01-25 15:14:20 +0100 |
---|---|---|
committer | Paul Moore <paul@paul-moore.com> | 2022-01-25 19:21:21 -0500 |
commit | bcb62828e3e8c813b6613db6eb7fd9657db248fc (patch) | |
tree | fbd29194657e39ad936cd5722eee0da87a13941f /security/selinux/selinuxfs.c | |
parent | 0266c25e7c2821181b610595df42cbca6bc93cb8 (diff) | |
download | lwn-bcb62828e3e8c813b6613db6eb7fd9657db248fc.tar.gz lwn-bcb62828e3e8c813b6613db6eb7fd9657db248fc.zip |
selinux: check return value of sel_make_avc_files
sel_make_avc_files() might fail and return a negative errno value on
memory allocation failures. Re-add the check of the return value,
dropped in 66f8e2f03c02 ("selinux: sidtab reverse lookup hash table").
Reported by clang-analyzer:
security/selinux/selinuxfs.c:2129:2: warning: Value stored to
'ret' is never read [deadcode.DeadStores]
ret = sel_make_avc_files(dentry);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
Fixes: 66f8e2f03c02 ("selinux: sidtab reverse lookup hash table")
Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
[PM: description line wrapping, added proper commit ref]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'security/selinux/selinuxfs.c')
-rw-r--r-- | security/selinux/selinuxfs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/security/selinux/selinuxfs.c b/security/selinux/selinuxfs.c index e4cd7cb856f3..f2f6203e0fff 100644 --- a/security/selinux/selinuxfs.c +++ b/security/selinux/selinuxfs.c @@ -2127,6 +2127,8 @@ static int sel_fill_super(struct super_block *sb, struct fs_context *fc) } ret = sel_make_avc_files(dentry); + if (ret) + goto err; dentry = sel_make_dir(sb->s_root, "ss", &fsi->last_ino); if (IS_ERR(dentry)) { |