Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 469ff8f7 authored by Mat Martineau's avatar Mat Martineau
Browse files

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: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
parent 73cdd290
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -1032,10 +1032,7 @@ payload contents" for more information.
	struct key *keyring_alloc(const char *description, uid_t uid, gid_t gid,
				  const struct cred *cred,
				  key_perm_t perm,
				  int (*restrict_link)(struct key *,
						       const struct key_type *,
						       unsigned long,
						       const union key_payload *),
				  key_restrict_link_func_t restrict_link,
				  unsigned long flags,
				  struct key *dest);

+7 −9
Original line number Diff line number Diff line
@@ -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,
+2 −6
Original line number Diff line number Diff line
@@ -225,9 +225,7 @@ static inline void key_alloc_serial(struct key *key)
struct key *key_alloc(struct key_type *type, const char *desc,
		      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_user *user = NULL;
	struct key *key;
@@ -806,9 +804,7 @@ key_ref_t key_create_or_update(key_ref_t keyring_ref,
	struct key *keyring, *key = NULL;
	key_ref_t key_ref;
	int ret;
	int (*restrict_link)(struct key *,
			     const struct key_type *,
			     const union key_payload *) = NULL;
	key_restrict_link_func_t restrict_link = NULL;

	/* look up the key type to see if it's one of the registered kernel
	 * types */
+1 −3
Original line number Diff line number Diff line
@@ -492,9 +492,7 @@ static long keyring_read(const struct key *keyring,
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)
{
	struct key *keyring;