lkml.org 
[lkml]   [2009]   [Aug]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3/6] KEYS: Flag dead keys to induce EKEYREVOKED [ver #2]
    Date
    Set the KEY_FLAG_DEAD flag on keys for which the type has been removed.  This
    causes the key_permission() function to return EKEYREVOKED in response to
    various commands. It does not, however, prevent unlinking or clearing of
    keyrings from detaching the key.

    Signed-off-by: David Howells <dhowells@redhat.com>
    Acked-by: Serge Hallyn <serue@us.ibm.com>
    ---

    security/keys/key.c | 4 +++-
    1 files changed, 3 insertions(+), 1 deletions(-)


    diff --git a/security/keys/key.c b/security/keys/key.c
    index 3762d5b..bd9d267 100644
    --- a/security/keys/key.c
    +++ b/security/keys/key.c
    @@ -956,8 +956,10 @@ void unregister_key_type(struct key_type *ktype)
    for (_n = rb_first(&key_serial_tree); _n; _n = rb_next(_n)) {
    key = rb_entry(_n, struct key, serial_node);

    - if (key->type == ktype)
    + if (key->type == ktype) {
    key->type = &key_type_dead;
    + set_bit(KEY_FLAG_DEAD, &key->flags);
    + }
    }

    spin_unlock(&key_serial_lock);


    \
     
     \ /
      Last update: 2009-08-04 22:43    [W:0.024 / U:0.292 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site