projects/linux·commit eca1bf5b

KEYS: Fix variable uninitialisation warnings

eca1bf5b · David Howells <[email protected]> · 2008-12-29 00:41:51 +00:00

Fix variable uninitialisation warnings introduced in:

	commit 8bbf4976b59fc9fc2861e79cab7beb3f6d647640
	Author: David Howells <[email protected]>
	Date:   Fri Nov 14 10:39:14 2008 +1100

	KEYS: Alter use of key instantiation link-to-keyring argument

As:

  security/keys/keyctl.c: In function 'keyctl_negate_key':
  security/keys/keyctl.c:976: warning: 'dest_keyring' may be used uninitialized in this function
  security/keys/keyctl.c: In function 'keyctl_instantiate_key':
  security/keys/keyctl.c:898: warning: 'dest_keyring' may be used uninitialized in this function

Some versions of gcc notice that get_instantiation_key() doesn't always set
*_dest_keyring, but fail to observe that if this happens then *_dest_keyring
will not be read by the caller.

Reported-by: Linus Torvalds <[email protected]>
Signed-off-by: David Howells <[email protected]>
Signed-off-by: James Morris <[email protected]>
Commit
eca1bf5b4fab56d2feb1572d34d59fcd92ea7df3
Parents
3c92ec8a

Changes

1 files changed · +3 −3

FileStatusAddDelContent
security/keys/keyctl.cmodified+3−3View file

security/keys/keyctl.c

View file
diff --git a/security/keys/keyctl.c b/security/keys/keyctl.c
index 7c72baa..6688765 100644
--- a/security/keys/keyctl.c
+++ b/security/keys/keyctl.c
@@ -838,11 +838,11 @@ static long get_instantiation_keyring(key_serial_t ringid,
{
key_ref_t dkref;
+ *_dest_keyring = NULL;
+
/* just return a NULL pointer if we weren't asked to make a link */
- if (ringid == 0) {
- *_dest_keyring = NULL;
+ if (ringid == 0)
return 0;
- }
/* if a specific keyring is nominated by ID, then use that */
if (ringid > 0) {