diff options
author | Elena Reshetova <elena.reshetova@intel.com> | 2017-03-31 15:20:48 +0300 |
---|---|---|
committer | James Morris <james.l.morris@oracle.com> | 2017-04-03 03:49:05 +0300 |
commit | fff292914d3a2f1efd05ca71c2ba72a3c663201e (patch) | |
tree | 627f9870ad82da8f6f06cca86a73e3b7e2fc97d5 /security/keys/proc.c | |
parent | 8291798dcf059cdc5e55a59b2c4ad70ae14508c2 (diff) | |
download | linux-fff292914d3a2f1efd05ca71c2ba72a3c663201e.tar.xz |
security, keys: convert key.usage from atomic_t to refcount_t
refcount_t type and corresponding API should be
used instead of atomic_t when the variable is used as
a reference counter. This allows to avoid accidental
refcounter overflows that might lead to use-after-free
situations.
Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
Signed-off-by: Hans Liljestrand <ishkamiel@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: David Windsor <dwindsor@gmail.com>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <james.l.morris@oracle.com>
Diffstat (limited to 'security/keys/proc.c')
-rw-r--r-- | security/keys/proc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/security/keys/proc.c b/security/keys/proc.c index b9f531c9e4fa..69199f18bfb3 100644 --- a/security/keys/proc.c +++ b/security/keys/proc.c @@ -252,7 +252,7 @@ static int proc_keys_show(struct seq_file *m, void *v) showflag(key, 'U', KEY_FLAG_USER_CONSTRUCT), showflag(key, 'N', KEY_FLAG_NEGATIVE), showflag(key, 'i', KEY_FLAG_INVALIDATED), - atomic_read(&key->usage), + refcount_read(&key->usage), xbuf, key->perm, from_kuid_munged(seq_user_ns(m), key->uid), |