aboutsummaryrefslogtreecommitdiffstats
path: root/security/keys/user_defined.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-01-19 14:46:08 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-01-19 14:46:08 -0500
commitafd290945cd283030b51b433a66fe57a8feb28c8 (patch)
treea389cb472d0ca242e02e86becd4a1967dfb0624b /security/keys/user_defined.c
parent90a4c0f51e8e44111a926be6f4c87af3938a79c3 (diff)
parent456a8167e94b66f406c27400a46a707b870452b0 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: KEYS: Permit key_serial() to be called with a const key pointer keys: fix user_defined key sparse messages ima: fix cred sparse warning MPILIB: Add a missing ENOMEM check
Diffstat (limited to 'security/keys/user_defined.c')
-rw-r--r--security/keys/user_defined.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/security/keys/user_defined.c b/security/keys/user_defined.c
index 69ff52c08e97..2aee3c5a3b99 100644
--- a/security/keys/user_defined.c
+++ b/security/keys/user_defined.c
@@ -59,7 +59,7 @@ int user_instantiate(struct key *key, const void *data, size_t datalen)
59 /* attach the data */ 59 /* attach the data */
60 upayload->datalen = datalen; 60 upayload->datalen = datalen;
61 memcpy(upayload->data, data, datalen); 61 memcpy(upayload->data, data, datalen);
62 rcu_assign_pointer(key->payload.data, upayload); 62 rcu_assign_keypointer(key, upayload);
63 ret = 0; 63 ret = 0;
64 64
65error: 65error:
@@ -98,7 +98,7 @@ int user_update(struct key *key, const void *data, size_t datalen)
98 if (ret == 0) { 98 if (ret == 0) {
99 /* attach the new data, displacing the old */ 99 /* attach the new data, displacing the old */
100 zap = key->payload.data; 100 zap = key->payload.data;
101 rcu_assign_pointer(key->payload.data, upayload); 101 rcu_assign_keypointer(key, upayload);
102 key->expiry = 0; 102 key->expiry = 0;
103 } 103 }
104 104
@@ -133,7 +133,7 @@ void user_revoke(struct key *key)
133 key_payload_reserve(key, 0); 133 key_payload_reserve(key, 0);
134 134
135 if (upayload) { 135 if (upayload) {
136 rcu_assign_pointer(key->payload.data, NULL); 136 rcu_assign_keypointer(key, NULL);
137 kfree_rcu(upayload, rcu); 137 kfree_rcu(upayload, rcu);
138 } 138 }
139} 139}