summaryrefslogtreecommitdiff
path: root/include/linux/key.h
diff options
context:
space:
mode:
authorMat Martineau <mathew.j.martineau@linux.intel.com>2016-04-25 21:30:39 +0300
committerMat Martineau <mathew.j.martineau@linux.intel.com>2017-04-03 20:24:55 +0300
commit469ff8f7d46d75b36de68a0411a2ce80109ad00b (patch)
tree4b4841cc00943da7565a259fbe90ea5e02a6082f /include/linux/key.h
parent73cdd29044e081d56ef6b3186d22cdf25d9dd333 (diff)
downloadlinux-469ff8f7d46d75b36de68a0411a2ce80109ad00b.tar.xz
KEYS: Use a typedef for restrict_link function pointers
This pointer type needs to be returned from a lookup function, and without a typedef the syntax gets cumbersome. Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Diffstat (limited to 'include/linux/key.h')
-rw-r--r--include/linux/key.h16
1 files changed, 7 insertions, 9 deletions
diff --git a/include/linux/key.h b/include/linux/key.h
index 9d9fac583dd3..3bb327043869 100644
--- a/include/linux/key.h
+++ b/include/linux/key.h
@@ -127,6 +127,10 @@ static inline bool is_key_possessed(const key_ref_t key_ref)
return (unsigned long) key_ref & 1UL;
}
+typedef int (*key_restrict_link_func_t)(struct key *keyring,
+ const struct key_type *type,
+ const union key_payload *payload);
+
/*****************************************************************************/
/*
* authentication token / access credential / keyring
@@ -215,9 +219,7 @@ struct key {
* overrides this, allowing the kernel to add extra keys without
* restriction.
*/
- int (*restrict_link)(struct key *keyring,
- const struct key_type *type,
- const union key_payload *payload);
+ key_restrict_link_func_t restrict_link;
};
extern struct key *key_alloc(struct key_type *type,
@@ -226,9 +228,7 @@ extern struct key *key_alloc(struct key_type *type,
const struct cred *cred,
key_perm_t perm,
unsigned long flags,
- int (*restrict_link)(struct key *,
- const struct key_type *,
- const union key_payload *));
+ key_restrict_link_func_t restrict_link);
#define KEY_ALLOC_IN_QUOTA 0x0000 /* add to quota, reject if would overrun */
@@ -304,9 +304,7 @@ extern struct key *keyring_alloc(const char *description, kuid_t uid, kgid_t gid
const struct cred *cred,
key_perm_t perm,
unsigned long flags,
- int (*restrict_link)(struct key *,
- const struct key_type *,
- const union key_payload *),
+ key_restrict_link_func_t restrict_link,
struct key *dest);
extern int restrict_link_reject(struct key *keyring,