diff options
author | James Morris <james.l.morris@oracle.com> | 2015-10-23 04:07:52 +0300 |
---|---|---|
committer | James Morris <james.l.morris@oracle.com> | 2015-10-23 04:07:52 +0300 |
commit | ba94c3ff20c9c179f2a80f0e4c71e1571ebbf5c7 (patch) | |
tree | 8f94d0fcb68cdcff0d00a7911ddb494705cf7c72 /security/keys/keyctl.c | |
parent | a47c7a6c8aff0563c0ef4adf299268f3c27af0f6 (diff) | |
parent | 146aa8b1453bd8f1ff2304ffb71b4ee0eb9acdcc (diff) | |
download | linux-ba94c3ff20c9c179f2a80f0e4c71e1571ebbf5c7.tar.xz |
Merge tag 'keys-next-20151021' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into next
Diffstat (limited to 'security/keys/keyctl.c')
-rw-r--r-- | security/keys/keyctl.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/security/keys/keyctl.c b/security/keys/keyctl.c index 0b9ec78a7a7a..fb111eafcb89 100644 --- a/security/keys/keyctl.c +++ b/security/keys/keyctl.c @@ -67,7 +67,6 @@ SYSCALL_DEFINE5(add_key, const char __user *, _type, char type[32], *description; void *payload; long ret; - bool vm; ret = -EINVAL; if (plen > 1024 * 1024 - 1) @@ -98,14 +97,12 @@ SYSCALL_DEFINE5(add_key, const char __user *, _type, /* pull the payload in if one was supplied */ payload = NULL; - vm = false; if (_payload) { ret = -ENOMEM; payload = kmalloc(plen, GFP_KERNEL | __GFP_NOWARN); if (!payload) { if (plen <= PAGE_SIZE) goto error2; - vm = true; payload = vmalloc(plen); if (!payload) goto error2; @@ -138,10 +135,7 @@ SYSCALL_DEFINE5(add_key, const char __user *, _type, key_ref_put(keyring_ref); error3: - if (!vm) - kfree(payload); - else - vfree(payload); + kvfree(payload); error2: kfree(description); error: @@ -1033,7 +1027,7 @@ long keyctl_instantiate_key_common(key_serial_t id, if (!instkey) goto error; - rka = instkey->payload.data; + rka = instkey->payload.data[0]; if (rka->target_key->serial != id) goto error; @@ -1200,7 +1194,7 @@ long keyctl_reject_key(key_serial_t id, unsigned timeout, unsigned error, if (!instkey) goto error; - rka = instkey->payload.data; + rka = instkey->payload.data[0]; if (rka->target_key->serial != id) goto error; |