| /Linux-v5.15/include/linux/platform_data/ | 
| D | keyboard-spear.h | 20 	KEY(0, 0, KEY_ESC), \21 	KEY(0, 1, KEY_1), \
 22 	KEY(0, 2, KEY_2), \
 23 	KEY(0, 3, KEY_3), \
 24 	KEY(0, 4, KEY_4), \
 25 	KEY(0, 5, KEY_5), \
 26 	KEY(0, 6, KEY_6), \
 27 	KEY(0, 7, KEY_7), \
 28 	KEY(0, 8, KEY_8), \
 29 	KEY(1, 0, KEY_9), \
 [all …]
 
 | 
| /Linux-v5.15/security/keys/ | 
| D | key.c | 2 /* Basic authentication token and access key management27 unsigned int key_quota_root_maxkeys = 1000000;	/* root's key count quota */
 28 unsigned int key_quota_root_maxbytes = 25000000; /* root's key space quota */
 29 unsigned int key_quota_maxkeys = 200;		/* general key count quota */
 30 unsigned int key_quota_maxbytes = 20000;	/* general key space quota */
 35 /* We serialise key instantiation and link */
 39 void __key_check(const struct key *key)  in __key_check()  argument
 41 	printk("__key_check: key %p {%08x} should be {%08x}\n",  in __key_check()
 42 	       key, key->magic, KEY_DEBUG_MAGIC);  in __key_check()
 48  * Get the key quota record for a user, allocating a new record if one doesn't
 [all …]
 
 | 
| D | request_key.c | 2 /* Request a key from userspace7  * See Documentation/security/keys/request-key.rst
 20 #define key_negative_timeout	60	/* default timeout on a negative key's existence */
 22 static struct key *check_cached_key(struct keyring_search_context *ctx)  in check_cached_key()
 25 	struct key *key = current->cached_requested_key;  in check_cached_key()  local
 27 	if (key &&  in check_cached_key()
 28 	    ctx->match_data.cmp(key, &ctx->match_data) &&  in check_cached_key()
 29 	    !(key->flags & ((1 << KEY_FLAG_INVALIDATED) |  in check_cached_key()
 31 		return key_get(key);  in check_cached_key()
 36 static void cache_requested_key(struct key *key)  in cache_requested_key()  argument
 [all …]
 
 | 
| D | gc.c | 2 /* Key garbage collector14  * Delay between key revocation/expiry in seconds
 34 #define KEY_GC_KEY_EXPIRED	0	/* A key expired and needs unlinking */
 40  * Any key whose type gets unregistered will be re-typed to this if it can't be
 79  * Some key's cleanup time was met after it expired, so we need to get the
 125 		struct key *key =  in key_gc_unused_keys()  local
 126 			list_entry(keys->next, struct key, graveyard_link);  in key_gc_unused_keys()
 127 		short state = key->state;  in key_gc_unused_keys()
 129 		list_del(&key->graveyard_link);  in key_gc_unused_keys()
 131 		kdebug("- %u", key->serial);  in key_gc_unused_keys()
 [all …]
 
 | 
| /Linux-v5.15/tools/testing/selftests/bpf/ | 
| D | test_lru_map.c | 42 static int bpf_map_lookup_elem_with_ref_bit(int fd, unsigned long long key,  in bpf_map_lookup_elem_with_ref_bit()  argument50 		BPF_LD_IMM64(BPF_REG_3, key),  in bpf_map_lookup_elem_with_ref_bit()
 114 			printf("key:%llu not found from map. %s(%d)\n",  in map_subset()
 119 			printf("key:%llu value0:%llu != value1:%llu\n",  in map_subset()
 152  * Add key=1 (+1 key)
 153  * Add key=2 (+1 key)
 154  * Lookup Key=1
 155  * Add Key=3
 156  *   => Key=2 will be removed by LRU
 157  * Iterate map.  Only found key=1 and key=3
 [all …]
 
 | 
| /Linux-v5.15/drivers/staging/wfx/ | 
| D | key.c | 3  * Key management related functions.11 #include "key.h"
 29 	WARN(!(wdev->key_map & BIT(idx)), "inconsistent key allocation");  in wfx_free_key()
 34 			     struct ieee80211_key_conf *key, u8 *peer_addr)  in fill_wep_pair()  argument
 36 	WARN(key->keylen > sizeof(msg->key_data), "inconsistent data");  in fill_wep_pair()
 37 	msg->key_length = key->keylen;  in fill_wep_pair()
 38 	memcpy(msg->key_data, key->key, key->keylen);  in fill_wep_pair()
 44 			      struct ieee80211_key_conf *key)  in fill_wep_group()  argument
 46 	WARN(key->keylen > sizeof(msg->key_data), "inconsistent data");  in fill_wep_group()
 47 	msg->key_id = key->keyidx;  in fill_wep_group()
 [all …]
 
 | 
| /Linux-v5.15/tools/testing/selftests/bpf/progs/ | 
| D | test_tunnel_kern.c | 49 	struct bpf_tunnel_key key;  in _gre_set_tunnel()  local51 	__builtin_memset(&key, 0x0, sizeof(key));  in _gre_set_tunnel()
 52 	key.remote_ipv4 = 0xac100164; /* 172.16.1.100 */  in _gre_set_tunnel()
 53 	key.tunnel_id = 2;  in _gre_set_tunnel()
 54 	key.tunnel_tos = 0;  in _gre_set_tunnel()
 55 	key.tunnel_ttl = 64;  in _gre_set_tunnel()
 57 	ret = bpf_skb_set_tunnel_key(skb, &key, sizeof(key),  in _gre_set_tunnel()
 71 	struct bpf_tunnel_key key;  in _gre_get_tunnel()  local
 72 	char fmt[] = "key %d remote ip 0x%x\n";  in _gre_get_tunnel()
 74 	ret = bpf_skb_get_tunnel_key(skb, &key, sizeof(key), 0);  in _gre_get_tunnel()
 [all …]
 
 | 
| /Linux-v5.15/fs/ubifs/ | 
| D | key.h | 12  * This header contains various key-related definitions and helper function.13  * UBIFS allows several key schemes, so we access key fields only via these
 14  * helpers. At the moment only one key scheme is supported.
 16  * Simple key scheme
 20  * in case of direntry key). Next 3 bits are node type. The last 29 bits are
 26  * Lot's of the key helpers require a struct ubifs_info *c as the first parameter.
 28  * different c->key_format. But right now, there is only one key type, UBIFS_SIMPLE_KEY_FMT.
 85  * ino_key_init - initialize inode key.
 87  * @key: key to initialize
 91 				union ubifs_key *key, ino_t inum)  in ino_key_init()  argument
 [all …]
 
 | 
| /Linux-v5.15/net/mac80211/ | 
| D | key.c | 32  * DOC: Key handling basics34  * Key handling in mac80211 is done based on per-interface (sub_if_data)
 36  * each station key also belongs to that interface.
 39  * that are implemented in software,  for each key the hardware is asked
 40  * to enable that key for offloading but if it cannot do that the key is
 43  * There is currently no way of knowing whether a key is handled in SW
 46  * All key management is internally protected by a mutex. Within all
 47  * other parts of mac80211, key references are, just as STA structure
 49  * unprotected, namely the key->sta dereferences within the hardware
 51  * remove the key which waits for an RCU grace period.
 [all …]
 
 | 
| /Linux-v5.15/Documentation/security/keys/ | 
| D | core.rst | 2 Kernel Key Retention Service9 Keyrings are permitted; these are a special type of key that can hold links to
 13 The key service can be configured on by enabling:
 15 	"Security options"/"Enable access key retention support" (CONFIG_KEYS)
 22 Key Overview
 26 tokens, keyrings, etc.. These are represented in the kernel by struct key.
 28 Each key has a number of attributes:
 32 	- A description (for matching a key in a search).
 39   *  Each key is issued a serial number of type key_serial_t that is unique for
 40      the lifetime of that key. All serial numbers are positive non-zero 32-bit
 [all …]
 
 | 
| D | request-key.rst | 2 Key Request Service5 The key request service is part of the key retention service (refer to
 12 	struct key *request_key(const struct key_type *type,
 18 	struct key *request_key_tag(const struct key_type *type,
 25 	struct key *request_key_with_auxdata(const struct key_type *type,
 34 	struct key *request_key_rcu(const struct key_type *type,
 46 does not need to link the key to a keyring to prevent it from being immediately
 47 destroyed.  The kernel interface returns a pointer directly to the key, and
 48 it's up to the caller to destroy the key.
 56 NULL).  This is only useful for those key types that define their own upcall
 [all …]
 
 | 
| /Linux-v5.15/include/linux/ | 
| D | key.h | 2 /* Authentication token and access key management27 /* key handle serial number */
 30 /* key handle permissions mask */
 33 struct key;
 40 #define KEY_POS_VIEW	0x01000000	/* possessor can view a key's attributes */
 41 #define KEY_POS_READ	0x02000000	/* possessor can read key payload / view keyring */
 42 #define KEY_POS_WRITE	0x04000000	/* possessor can update key payload / add link to keyring */
 43 #define KEY_POS_SEARCH	0x08000000	/* possessor can find a key in search / search a keyring */
 44 #define KEY_POS_LINK	0x10000000	/* possessor can create a link to a key/keyring */
 45 #define KEY_POS_SETATTR	0x20000000	/* possessor can set key attributes */
 [all …]
 
 | 
| D | siphash.h | 21 	u64 key[2];  member24 static inline bool siphash_key_is_zero(const siphash_key_t *key)  in siphash_key_is_zero()  argument
 26 	return !(key->key[0] | key->key[1]);  in siphash_key_is_zero()
 29 u64 __siphash_aligned(const void *data, size_t len, const siphash_key_t *key);
 31 u64 __siphash_unaligned(const void *data, size_t len, const siphash_key_t *key);
 34 u64 siphash_1u64(const u64 a, const siphash_key_t *key);
 35 u64 siphash_2u64(const u64 a, const u64 b, const siphash_key_t *key);
 37 		 const siphash_key_t *key);
 39 		 const siphash_key_t *key);
 40 u64 siphash_1u32(const u32 a, const siphash_key_t *key);
 [all …]
 
 | 
| D | key-type.h | 2 /* Definitions for key type implementations11 #include <linux/key.h>
 20  * Pre-parsed payload, used by key add, update and instantiate.
 24  * def_datalen from the key type.  Then if the preparse() op is provided by the
 25  * key type, that will be called.  Then the struct will be passed to the
 33 	char		*description;	/* Proposed key description (or NULL) */
 38 	time64_t	expiry;		/* Expiry time of key */
 41 typedef int (*request_key_actor_t)(struct key *auth_key, void *aux);
 51 	bool (*cmp)(const struct key *key,
 62  * kernel managed key type definition
 [all …]
 
 | 
| /Linux-v5.15/crypto/ | 
| D | rsa_helper.c | 3  * RSA key extract helper19 	struct rsa_key *key = context;  in rsa_get_n()  local
 23 	/* invalid key provided */  in rsa_get_n()
 33 		/* In FIPS mode only allow key size 2K and higher */  in rsa_get_n()
 35 			pr_err("RSA: key size not allowed in FIPS mode\n");  in rsa_get_n()
 40 	key->n = value;  in rsa_get_n()
 41 	key->n_sz = vlen;  in rsa_get_n()
 49 	struct rsa_key *key = context;  in rsa_get_e()  local
 51 	/* invalid key provided */  in rsa_get_e()
 52 	if (!value || !key->n_sz || !vlen || vlen > key->n_sz)  in rsa_get_e()
 [all …]
 
 | 
| /Linux-v5.15/arch/s390/include/uapi/asm/ | 
| D | pkey.h | 23 #define SECKEYBLOBSIZE	64	   /* secure key blob size is always 64 bytes */24 #define PROTKEYBLOBSIZE 80	/* protected key blob size is always 80 bytes */
 25 #define MAXPROTKEYSIZE	64	/* a protected key blob may be up to 64 bytes */
 26 #define MAXCLRKEYSIZE	32	   /* a clear key value may be up to 32 bytes */
 28 #define MINEP11AESKEYBLOBSIZE 256  /* min EP11 AES key blob size  */
 29 #define MAXEP11AESKEYBLOBSIZE 320  /* max EP11 AES key blob size */
 31 /* Minimum size of a key blob */
 50 /* the newer ioctls use a pkey_key_size enum for key size information */
 78 /* Struct to hold a CCA AES secure key blob */
 80 	__u8  seckey[SECKEYBLOBSIZE];		  /* the secure key blob */
 [all …]
 
 | 
| /Linux-v5.15/security/selinux/ss/ | 
| D | avtab.c | 71 		  const struct avtab_key *key, const struct avtab_datum *datum)  in avtab_insert_node()  argument78 	newnode->key = *key;  in avtab_insert_node()
 80 	if (key->specified & AVTAB_XPERMS) {  in avtab_insert_node()
 106 static int avtab_insert(struct avtab *h, const struct avtab_key *key,  in avtab_insert()  argument
 111 	u16 specified = key->specified & ~(AVTAB_ENABLED|AVTAB_ENABLED_OLD);  in avtab_insert()
 116 	hvalue = avtab_hash(key, h->mask);  in avtab_insert()
 120 		if (key->source_type == cur->key.source_type &&  in avtab_insert()
 121 		    key->target_type == cur->key.target_type &&  in avtab_insert()
 122 		    key->target_class == cur->key.target_class &&  in avtab_insert()
 123 		    (specified & cur->key.specified)) {  in avtab_insert()
 [all …]
 
 | 
| /Linux-v5.15/net/openvswitch/ | 
| D | flow.c | 242 static int parse_ipv6hdr(struct sk_buff *skb, struct sw_flow_key *key)  in parse_ipv6hdr()  argument257 	key->ip.proto = NEXTHDR_NONE;  in parse_ipv6hdr()
 258 	key->ip.tos = ipv6_get_dsfield(nh);  in parse_ipv6hdr()
 259 	key->ip.ttl = nh->hop_limit;  in parse_ipv6hdr()
 260 	key->ipv6.label = *(__be32 *)nh & htonl(IPV6_FLOWINFO_FLOWLABEL);  in parse_ipv6hdr()
 261 	key->ipv6.addr.src = nh->saddr;  in parse_ipv6hdr()
 262 	key->ipv6.addr.dst = nh->daddr;  in parse_ipv6hdr()
 267 			key->ip.frag = OVS_FRAG_TYPE_LATER;  in parse_ipv6hdr()
 268 			key->ip.proto = nexthdr;  in parse_ipv6hdr()
 271 		key->ip.frag = OVS_FRAG_TYPE_FIRST;  in parse_ipv6hdr()
 [all …]
 
 | 
| /Linux-v5.15/kernel/ | 
| D | jump_label.c | 41 	 * Entrires are sorted by key.  in jump_label_cmp()72 	jea->key	= jeb->key - delta;  in jump_label_swap()
 76 	jeb->key	= tmp.key + delta;  in jump_label_swap()
 93 static void jump_label_update(struct static_key *key);
 104 int static_key_count(struct static_key *key)  in static_key_count()  argument
 110 	int n = atomic_read(&key->enabled);  in static_key_count()
 116 void static_key_slow_inc_cpuslocked(struct static_key *key)  in static_key_slow_inc_cpuslocked()  argument
 120 	STATIC_KEY_CHECK_USE(key);  in static_key_slow_inc_cpuslocked()
 128 	 * static_key_enabled(&key) for jumps to be updated properly.  in static_key_slow_inc_cpuslocked()
 130 	 * So give a special meaning to negative key->enabled: it sends  in static_key_slow_inc_cpuslocked()
 [all …]
 
 | 
| /Linux-v5.15/drivers/s390/crypto/ | 
| D | zcrypt_cca_key.h | 21  * mapping for the cca private ME key token.25  * mapping for the cca key token header
 40  * In a private key, the modulus doesn't appear in the public
 51 	unsigned short modulus_byte_len;    /* In a private key, this is 0 */
 55  * mapping for the cca private CRT key 'token'
 92  * Set up private key fields of a type6 MEX message. The _pad variant
 94  * Note that all numerics in the key token are big-endian,
 95  * while the entries in the key block header are little-endian.
 98  * @p: pointer to memory area for the key
 100  * Returns the size of the key area or negative errno value.
 [all …]
 
 | 
| /Linux-v5.15/Documentation/crypto/ | 
| D | asymmetric-keys.rst | 4 Asymmetric / Public-key Cryptography Key Type10   - Key identification.
 13   - Asymmetric key subtypes.
 21 The "asymmetric" key type is designed to be a container for the keys used in
 22 public-key cryptography, without imposing any particular restrictions on the
 23 form or mechanism of the cryptography or form of the key.
 25 The asymmetric key is given a subtype that defines what sort of data is
 26 associated with the key and provides operations to describe and destroy it.
 27 However, no requirement is made that the key data actually be stored in the
 28 key.
 [all …]
 
 | 
| /Linux-v5.15/drivers/nvdimm/ | 
| D | security.c | 11 #include <linux/key.h>12 #include <linux/key-type.h>
 23 MODULE_PARM_DESC(key_revalidate, "Require key validation at init.");
 27 static void *key_data(struct key *key)  in key_data()  argument
 29 	struct encrypted_key_payload *epayload = dereference_key_locked(key);  in key_data()
 31 	lockdep_assert_held_read(&key->sem);  in key_data()
 36 static void nvdimm_put_key(struct key *key)  in nvdimm_put_key()  argument
 38 	if (!key)  in nvdimm_put_key()
 41 	up_read(&key->sem);  in nvdimm_put_key()
 42 	key_put(key);  in nvdimm_put_key()
 [all …]
 
 | 
| /Linux-v5.15/net/ceph/ | 
| D | crypto.c | 11 #include <linux/key-type.h>20  * Set ->key and ->tfm.  The rest of the key should be filled in before
 23 static int set_secret(struct ceph_crypto_key *key, void *buf)  in set_secret()  argument
 28 	key->key = NULL;  in set_secret()
 29 	key->tfm = NULL;  in set_secret()
 31 	switch (key->type) {  in set_secret()
 40 	if (!key->len)  in set_secret()
 43 	key->key = kmemdup(buf, key->len, GFP_NOIO);  in set_secret()
 44 	if (!key->key) {  in set_secret()
 51 	key->tfm = crypto_alloc_sync_skcipher("cbc(aes)", 0, 0);  in set_secret()
 [all …]
 
 | 
| /Linux-v5.15/arch/arm/mach-pxa/ | 
| D | ezx.c | 397 	KEY(0, 0, KEY_SEND),398 	KEY(0, 1, KEY_BACK),
 399 	KEY(0, 2, KEY_END),
 400 	KEY(0, 3, KEY_PAGEUP),
 401 	KEY(0, 4, KEY_UP),
 403 	KEY(1, 0, KEY_NUMERIC_1),
 404 	KEY(1, 1, KEY_NUMERIC_2),
 405 	KEY(1, 2, KEY_NUMERIC_3),
 406 	KEY(1, 3, KEY_SELECT),
 407 	KEY(1, 4, KEY_KPENTER),
 [all …]
 
 | 
| /Linux-v5.15/fs/crypto/ | 
| D | keyring.c | 22 #include <linux/key-type.h>64 static int fscrypt_key_instantiate(struct key *key,  in fscrypt_key_instantiate()  argument
 67 	key->payload.data[0] = (struct fscrypt_master_key *)prep->data;  in fscrypt_key_instantiate()
 71 static void fscrypt_key_destroy(struct key *key)  in fscrypt_key_destroy()  argument
 73 	free_master_key(key->payload.data[0]);  in fscrypt_key_destroy()
 76 static void fscrypt_key_describe(const struct key *key, struct seq_file *m)  in fscrypt_key_describe()  argument
 78 	seq_puts(m, key->description);  in fscrypt_key_describe()
 80 	if (key_is_positive(key)) {  in fscrypt_key_describe()
 81 		const struct fscrypt_master_key *mk = key->payload.data[0];  in fscrypt_key_describe()
 89  * Type of key in ->s_master_keys.  Each key of this type represents a master
 [all …]
 
 |