Defined in 1 files as a macro:
Defined in 1 files as a function:
Referenced in 16 files:
- arch/s390/kernel/cert_store.c
- block/sed-opal.c, line 334
- certs/blacklist.c, line 238
- certs/system_keyring.c, line 183
- crypto/asymmetric_keys/x509_loader.c, line 47
- fs/crypto/keyring.c, line 700
- kernel/crash_dump_dm_crypt.c
- net/handshake/tlshd.c
- net/rxrpc/rxperf.c
- security/integrity/digsig.c, line 189
- security/keys/key.c
- security/keys/keyctl.c
- security/keys/persistent.c
- security/keys/proc.c, line 185
- security/keys/process_keys.c, line 814
- security/keys/request_key.c, line 626
Smatch caller information:
block/sed-opal.c read_sed_opal_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| DATA_SOURCE | 0 | key_ref | r keyring_search |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->dev_lock |
fs/crypto/keyring.c get_keyring_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/request_key.c request_key_and_link() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 4096-ptr_max |
| DATA_SOURCE | 0 | key_ref | r search_process_keyrings_rcu |
| RX_PATH | |||
| NOCHECK_CALL | |||
| LOCK2 | global &key_types_sem |
security/integrity/digsig.c integrity_add_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
kernel/crash_dump_dm_crypt.c add_key_to_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &buffer->mutex | ||
| LOCK2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct configfs_buffer)->mutex | ||
| TYPE_LOCK | (struct configfs_fragment)->frag_sem |
kernel/crash_dump_dm_crypt.c restore_dm_crypt_keys_to_thread_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &buffer->mutex | ||
| LOCK2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct configfs_buffer)->mutex | ||
| TYPE_LOCK | (struct configfs_fragment)->frag_sem |
net/handshake/tlshd.c tls_handshake_private_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->lock | ||
| HALF_LOCKED2 | &devlink->lock | ||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &dpll_lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &net_dm_mutex | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| HALF_LOCKED2 | rcu_read |
net/handshake/tlshd.c tls_handshake_private_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->lock | ||
| HALF_LOCKED2 | &devlink->lock | ||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &dpll_lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &net_dm_mutex | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| HALF_LOCKED2 | rcu_read |
security/keys/proc.c proc_keys_show() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 4096-ptr_max |
| DATA_SOURCE | 0 | key_ref | r search_cred_keyrings_rcu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &m->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
net/rxrpc/rxperf.c rxperf_add_rxkad_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
net/rxrpc/rxperf.c rxperf_add_yfs_rxgk_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_add_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_add_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_add_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_add_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_request_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c __do_sys_request_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_describe_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_get_keyring_ID() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_get_security() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_invalidate_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_clear() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_link() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_link() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_move() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_move() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_move() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_search() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| DATA_SOURCE | 0 | key_ref | r keyring_search |
| NOCHECK_CALL | |||
| LOCK2 | global &key_types_sem |
security/keys/keyctl.c keyctl_keyring_search() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_search() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_unlink() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_keyring_unlink() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_restrict_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_revoke_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_session_to_parent() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_update_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
security/keys/persistent.c key_get_persistent() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 1-u64max |
| NOCHECK_CALL |
security/keys/persistent.c keyctl_get_persistent() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0,4096-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r lookup_user_key |
| NOCHECK_CALL |
certs/blacklist.c is_hash_blacklisted() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| DATA_SOURCE | 0 | key_ref | r keyring_search |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &iint->mutex |
security/keys/key.c __key_create_or_update() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 1-u64max |
| DATA_SOURCE | 0 | key_ref | r find_key_to_update |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &keyring->sem | ||
| LOCK2 | global &key_types_sem | ||
| HALF_LOCKED2 | global &pernet_ops_rwsem | ||
| TYPE_LOCK | (struct key)->sem |
security/keys/key.c __key_create_or_update() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 1-u64max |
| DATA_SOURCE | 0 | key_ref | r find_key_to_update |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &key_types_sem | ||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem |
certs/system_keyring.c add_to_secondary_keyring() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
crypto/asymmetric_keys/x509_loader.c x509_load_certificate_list() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 0-ptr_max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| BUF_SIZE | 0 | key_ref | (-1)-s32max |
| DATA_SOURCE | 0 | key_ref | r key_create_or_update |
| NOCHECK_CALL |
security/keys/process_keys.c lookup_user_key() -> key_ref_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key_ref | 4096-18446744073709547521 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &dev->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | sk |