Home
last modified time | relevance | path

Searched refs:key_ref (Results 1 – 18 of 18) sorted by relevance

/linux/security/keys/
H A Dkeyctl.c80 key_ref_t keyring_ref, key_ref; in SYSCALL_DEFINE5() local
134 key_ref = key_create_or_update(keyring_ref, type, description, in SYSCALL_DEFINE5()
137 if (!IS_ERR(key_ref)) { in SYSCALL_DEFINE5()
138 ret = key_ref_to_ptr(key_ref)->serial; in SYSCALL_DEFINE5()
139 key_ref_put(key_ref); in SYSCALL_DEFINE5()
142 ret = PTR_ERR(key_ref); in SYSCALL_DEFINE5()
260 key_ref_t key_ref; in keyctl_get_keyring_ID() local
265 key_ref = lookup_user_key(id, lflags, KEY_NEED_SEARCH); in keyctl_get_keyring_ID()
266 if (IS_ERR(key_ref)) { in keyctl_get_keyring_ID()
267 ret = PTR_ERR(key_ref); in keyctl_get_keyring_ID()
[all …]
H A Dprocess_keys.c425 key_ref_t key_ref, ret, err; in search_cred_keyrings_rcu() local
435 key_ref = NULL; in search_cred_keyrings_rcu()
441 key_ref = keyring_search_rcu( in search_cred_keyrings_rcu()
443 if (!IS_ERR(key_ref)) in search_cred_keyrings_rcu()
446 switch (PTR_ERR(key_ref)) { in search_cred_keyrings_rcu()
449 ret = key_ref; in search_cred_keyrings_rcu()
452 err = key_ref; in search_cred_keyrings_rcu()
459 key_ref = keyring_search_rcu( in search_cred_keyrings_rcu()
461 if (!IS_ERR(key_ref)) in search_cred_keyrings_rcu()
464 switch (PTR_ERR(key_ref)) { in search_cred_keyrings_rcu()
[all …]
H A Dkey.c765 static inline key_ref_t __key_update(key_ref_t key_ref, in __key_update() argument
768 struct key *key = key_ref_to_ptr(key_ref); in __key_update()
772 ret = key_permission(key_ref, KEY_NEED_WRITE); in __key_update()
794 return key_ref; in __key_update()
798 key_ref = ERR_PTR(ret); in __key_update()
822 key_ref_t key_ref; in __key_create_or_update() local
830 key_ref = ERR_PTR(-ENODEV); in __key_create_or_update()
834 key_ref = ERR_PTR(-EINVAL); in __key_create_or_update()
846 key_ref = ERR_PTR(-ENOTDIR); in __key_create_or_update()
859 key_ref = ERR_PTR(ret); in __key_create_or_update()
[all …]
H A Drequest_key.c378 key_ref_t key_ref; in construct_alloc_key() local
422 key_ref = search_process_keyrings_rcu(ctx); in construct_alloc_key()
424 if (!IS_ERR(key_ref)) in construct_alloc_key()
447 key = key_ref_to_ptr(key_ref); in construct_alloc_key()
597 key_ref_t key_ref; in request_key_and_link() local
618 key_ref = search_process_keyrings_rcu(&ctx); in request_key_and_link()
621 if (!IS_ERR(key_ref)) { in request_key_and_link()
623 ret = key_task_permission(key_ref, current_cred(), in request_key_and_link()
626 key_ref_put(key_ref); in request_key_and_link()
632 key = key_ref_to_ptr(key_ref); in request_key_and_link()
[all …]
H A Dpermission.c26 int key_task_permission(const key_ref_t key_ref, const struct cred *cred, in key_task_permission() argument
51 key = key_ref_to_ptr(key_ref); in key_task_permission()
82 if (is_key_possessed(key_ref)) in key_task_permission()
90 return security_key_permission(key_ref, cred, need_perm); in key_task_permission()
H A Dkeyctl_pkey.c82 key_ref_t key_ref; in keyctl_pkey_params_get() local
98 key_ref = lookup_user_key(id, 0, KEY_NEED_SEARCH); in keyctl_pkey_params_get()
99 if (IS_ERR(key_ref)) in keyctl_pkey_params_get()
100 return PTR_ERR(key_ref); in keyctl_pkey_params_get()
101 params->key = key_ref_to_ptr(key_ref); in keyctl_pkey_params_get()
H A Ddh.c21 key_ref_t key_ref; in dh_data_from_key() local
25 key_ref = lookup_user_key(keyid, 0, KEY_NEED_READ); in dh_data_from_key()
26 if (IS_ERR(key_ref)) { in dh_data_from_key()
31 key = key_ref_to_ptr(key_ref); in dh_data_from_key()
H A Dproc.c158 key_ref_t key_ref, skey_ref; in proc_keys_show() local
175 key_ref = make_key_ref(key, 0); in proc_keys_show()
186 key_ref = make_key_ref(key, 1); in proc_keys_show()
191 rc = key_task_permission(key_ref, ctx.cred, KEY_NEED_VIEW); in proc_keys_show()
H A Dinternal.h175 extern int key_task_permission(const key_ref_t key_ref,
199 static inline int key_permission(const key_ref_t key_ref, in key_permission() argument
202 return key_task_permission(key_ref, current_cred(), need_perm); in key_permission()
/linux/include/linux/
H A Dkey.h161 static inline struct key *key_ref_to_ptr(const key_ref_t key_ref) in key_ref_to_ptr() argument
163 return (struct key *) ((unsigned long) key_ref & ~1UL); in key_ref_to_ptr()
166 static inline bool is_key_possessed(const key_ref_t key_ref) in is_key_possessed() argument
168 return (unsigned long) key_ref & 1UL; in is_key_possessed()
318 static inline void key_ref_put(key_ref_t key_ref) in key_ref_put() argument
320 key_put(key_ref_to_ptr(key_ref)); in key_ref_put()
H A Dsecurity.h2140 int security_key_permission(key_ref_t key_ref, const struct cred *cred,
2160 static inline int security_key_permission(key_ref_t key_ref, in security_key_permission() argument
H A Dlsm_hook_defs.h413 LSM_HOOK(int, 0, key_permission, key_ref_t key_ref, const struct cred *cred,
/linux/kernel/
H A Dcrash_dump_dm_crypt.c66 key_ref_t key_ref; in add_key_to_keyring() local
70 key_ref = key_create_or_update(keyring_ref, "user", dm_key->key_desc, in add_key_to_keyring()
74 if (!IS_ERR(key_ref)) { in add_key_to_keyring()
75 r = key_ref_to_ptr(key_ref)->serial; in add_key_to_keyring()
76 key_ref_put(key_ref); in add_key_to_keyring()
79 r = PTR_ERR(key_ref); in add_key_to_keyring()
/linux/kernel/bpf/
H A Dhelpers.c3886 key_ref_t key_ref; in bpf_lookup_user_key() local
3896 key_ref = lookup_user_key(serial, flags, KEY_DEFER_PERM_CHECK); in bpf_lookup_user_key()
3897 if (IS_ERR(key_ref)) in bpf_lookup_user_key()
3902 key_put(key_ref_to_ptr(key_ref)); in bpf_lookup_user_key()
3906 bkey->key = key_ref_to_ptr(key_ref); in bpf_lookup_user_key()
/linux/security/
H A Dsecurity.c5049 int security_key_permission(key_ref_t key_ref, const struct cred *cred, in security_key_permission() argument
5052 return call_int_hook(key_permission, key_ref, cred, need_perm); in security_key_permission()
/linux/security/smack/
H A Dsmack_lsm.c4587 static int smack_key_permission(key_ref_t key_ref, in smack_key_permission() argument
4623 keyp = key_ref_to_ptr(key_ref); in smack_key_permission()
/linux/Documentation/security/keys/
H A Dcore.rst1130 struct key *key_ref_to_ptr(const key_ref_t key_ref);
1132 bool is_key_possessed(const key_ref_t key_ref);
1211 void key_ref_put(key_ref_t key_ref);
/linux/security/selinux/
H A Dhooks.c6913 static int selinux_key_permission(key_ref_t key_ref, in selinux_key_permission() argument
6952 key = key_ref_to_ptr(key_ref); in selinux_key_permission()