KEYS: Return more accurate error codes
authorDan Carpenter <error27@gmail.com>
Mon, 17 May 2010 13:42:35 +0000 (14:42 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 5 Jul 2010 18:08:47 +0000 (11:08 -0700)
commit 4d09ec0f705cf88a12add029c058b53f288cfaa2 upstream.

We were using the wrong variable here so the error codes weren't being returned
properly.  The original code returns -ENOKEY.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
security/keys/process_keys.c

index 45b240a..b04a2bd 100644 (file)
@@ -592,7 +592,7 @@ key_ref_t lookup_user_key(struct task_struct *context, key_serial_t id,
 
                        ret = install_thread_keyring(context);
                        if (ret < 0) {
-                               key = ERR_PTR(ret);
+                               key_ref = ERR_PTR(ret);
                                goto error;
                        }
                }
@@ -609,7 +609,7 @@ key_ref_t lookup_user_key(struct task_struct *context, key_serial_t id,
 
                        ret = install_process_keyring(context);
                        if (ret < 0) {
-                               key = ERR_PTR(ret);
+                               key_ref = ERR_PTR(ret);
                                goto error;
                        }
                }
@@ -665,7 +665,7 @@ key_ref_t lookup_user_key(struct task_struct *context, key_serial_t id,
 
        case KEY_SPEC_GROUP_KEYRING:
                /* group keyrings are not yet supported */
-               key = ERR_PTR(-EINVAL);
+               key_ref = ERR_PTR(-EINVAL);
                goto error;
 
        case KEY_SPEC_REQKEY_AUTH_KEY: