diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2017-05-23 17:33:46 +0300 |
---|---|---|
committer | John Johansen <john.johansen@canonical.com> | 2017-06-08 11:21:05 -0700 |
commit | ffac1de6cf6f84e47cdb6d6de0629bc534f60961 (patch) | |
tree | c8dcf57c6a10a421de56722c0b0518c666d181ba /security | |
parent | 47dbd1cdbb4e74d656e444deb6675ee38ca1b1f3 (diff) |
apparmor: Fix error cod in __aa_fs_profile_mkdir()
We can either return PTR_ERR(NULL) or a PTR_ERR(a valid pointer) here.
Returning NULL is probably not good, but since this happens at boot
then we are probably already toasted if we were to hit this bug in real
life. In other words, it seems like a very low severity bug to me.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: John Johansen <john.johansen@canonical.com>
Diffstat (limited to 'security')
-rw-r--r-- | security/apparmor/apparmorfs.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/security/apparmor/apparmorfs.c b/security/apparmor/apparmorfs.c index 41e427a4f051..26ad1a370632 100644 --- a/security/apparmor/apparmorfs.c +++ b/security/apparmor/apparmorfs.c @@ -727,8 +727,10 @@ int __aa_fs_profile_mkdir(struct aa_profile *profile, struct dentry *parent) id_len = snprintf(NULL, 0, ".%ld", profile->ns->uniq_id); profile->dirname = kmalloc(len + id_len + 1, GFP_KERNEL); - if (!profile->dirname) - goto fail; + if (!profile->dirname) { + error = -ENOMEM; + goto fail2; + } mangle_name(profile->base.name, profile->dirname); sprintf(profile->dirname + len, ".%ld", profile->ns->uniq_id++); |