KEYS: Use bool in make_key_ref() and is_key_possessed()
Make make_key_ref() take a bool possession parameter and make is_key_possessed() return a bool. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
@@ -865,15 +865,14 @@ encountered:
|
|||||||
calling processes has a searchable link to the key from one of its
|
calling processes has a searchable link to the key from one of its
|
||||||
keyrings. There are three functions for dealing with these:
|
keyrings. There are three functions for dealing with these:
|
||||||
|
|
||||||
key_ref_t make_key_ref(const struct key *key,
|
key_ref_t make_key_ref(const struct key *key, bool possession);
|
||||||
unsigned long possession);
|
|
||||||
|
|
||||||
struct key *key_ref_to_ptr(const key_ref_t key_ref);
|
struct key *key_ref_to_ptr(const key_ref_t key_ref);
|
||||||
|
|
||||||
unsigned long is_key_possessed(const key_ref_t key_ref);
|
bool is_key_possessed(const key_ref_t key_ref);
|
||||||
|
|
||||||
The first function constructs a key reference from a key pointer and
|
The first function constructs a key reference from a key pointer and
|
||||||
possession information (which must be 0 or 1 and not any other value).
|
possession information (which must be true or false).
|
||||||
|
|
||||||
The second function retrieves the key pointer from a reference and the
|
The second function retrieves the key pointer from a reference and the
|
||||||
third retrieves the possession flag.
|
third retrieves the possession flag.
|
||||||
|
@@ -99,7 +99,7 @@ struct keyring_name;
|
|||||||
typedef struct __key_reference_with_attributes *key_ref_t;
|
typedef struct __key_reference_with_attributes *key_ref_t;
|
||||||
|
|
||||||
static inline key_ref_t make_key_ref(const struct key *key,
|
static inline key_ref_t make_key_ref(const struct key *key,
|
||||||
unsigned long possession)
|
bool possession)
|
||||||
{
|
{
|
||||||
return (key_ref_t) ((unsigned long) key | possession);
|
return (key_ref_t) ((unsigned long) key | possession);
|
||||||
}
|
}
|
||||||
@@ -109,7 +109,7 @@ static inline struct key *key_ref_to_ptr(const key_ref_t key_ref)
|
|||||||
return (struct key *) ((unsigned long) key_ref & ~1UL);
|
return (struct key *) ((unsigned long) key_ref & ~1UL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline unsigned long is_key_possessed(const key_ref_t key_ref)
|
static inline bool is_key_possessed(const key_ref_t key_ref)
|
||||||
{
|
{
|
||||||
return (unsigned long) key_ref & 1UL;
|
return (unsigned long) key_ref & 1UL;
|
||||||
}
|
}
|
||||||
|
@@ -329,9 +329,10 @@ key_ref_t keyring_search_aux(key_ref_t keyring_ref,
|
|||||||
|
|
||||||
struct keyring_list *keylist;
|
struct keyring_list *keylist;
|
||||||
struct timespec now;
|
struct timespec now;
|
||||||
unsigned long possessed, kflags;
|
unsigned long kflags;
|
||||||
struct key *keyring, *key;
|
struct key *keyring, *key;
|
||||||
key_ref_t key_ref;
|
key_ref_t key_ref;
|
||||||
|
bool possessed;
|
||||||
long err;
|
long err;
|
||||||
int sp, nkeys, kix;
|
int sp, nkeys, kix;
|
||||||
|
|
||||||
@@ -542,8 +543,8 @@ key_ref_t __keyring_search_one(key_ref_t keyring_ref,
|
|||||||
key_perm_t perm)
|
key_perm_t perm)
|
||||||
{
|
{
|
||||||
struct keyring_list *klist;
|
struct keyring_list *klist;
|
||||||
unsigned long possessed;
|
|
||||||
struct key *keyring, *key;
|
struct key *keyring, *key;
|
||||||
|
bool possessed;
|
||||||
int nkeys, loop;
|
int nkeys, loop;
|
||||||
|
|
||||||
keyring = key_ref_to_ptr(keyring_ref);
|
keyring = key_ref_to_ptr(keyring_ref);
|
||||||
|
Reference in New Issue
Block a user