2010-06-30 09:39:20

by David Howells

[permalink] [raw]
Subject: [PATCH] KEYS: Reinstate lost passing of process keyring ID in call_sbin_request_key()

From: Justin P. Mattock <[email protected]>

In commit bb952bb98a7e479262c7eb25d5592545a3af147d there was the accidental
deletion of a statement from call_sbin_request_key() to render the process
keyring ID to a text string so that it can be passed to /sbin/request-key.

With gcc 4.6.0 this causes the following warning:

CC security/keys/request_key.o
security/keys/request_key.c: In function 'call_sbin_request_key':
security/keys/request_key.c:102:15: warning: variable 'prkey' set but not used

This patch reinstates that statement.

Without this statement, /sbin/request-key will get some random rubbish from the
stack as that parameter.

Signed-off-by: Justin P. Mattock <[email protected]>
Signed-off-by: David Howells <[email protected]>
---

security/keys/request_key.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/security/keys/request_key.c b/security/keys/request_key.c
index f5ec9ac..0d26f68 100644
--- a/security/keys/request_key.c
+++ b/security/keys/request_key.c
@@ -144,6 +144,7 @@ static int call_sbin_request_key(struct key_construction *cons,
prkey = 0;
if (cred->tgcred->process_keyring)
prkey = cred->tgcred->process_keyring->serial;
+ sprintf(keyring_str[1], "%d", prkey);

rcu_read_lock();
session = rcu_dereference(cred->tgcred->session_keyring);


2010-07-01 00:19:53

by James Morris

[permalink] [raw]
Subject: Re: [PATCH] KEYS: Reinstate lost passing of process keyring ID in call_sbin_request_key()

On Wed, 30 Jun 2010, David Howells wrote:

> From: Justin P. Mattock <[email protected]>
>
> In commit bb952bb98a7e479262c7eb25d5592545a3af147d there was the accidental
> deletion of a statement from call_sbin_request_key() to render the process
> keyring ID to a text string so that it can be passed to /sbin/request-key.
>
> With gcc 4.6.0 this causes the following warning:
>
> CC security/keys/request_key.o
> security/keys/request_key.c: In function 'call_sbin_request_key':
> security/keys/request_key.c:102:15: warning: variable 'prkey' set but not used
>
> This patch reinstates that statement.
>
> Without this statement, /sbin/request-key will get some random rubbish from the
> stack as that parameter.
>
> Signed-off-by: Justin P. Mattock <[email protected]>
> Signed-off-by: David Howells <[email protected]>

Applied to
git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6#next


--
James Morris
<[email protected]>