Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 12 files:
- arch/s390/kernel/cert_store.c, line 303
- crypto/af_alg.c, line 335
- drivers/nvdimm/security.c, line 98
- fs/crypto/keyring.c, line 675
- kernel/bpf/helpers.c, line 4236
- kernel/crash_dump_dm_crypt.c, line 111
- net/handshake/tlshd.c
- security/keys/dh.c, line 25
- security/keys/keyctl.c
- security/keys/keyctl_pkey.c, line 98
- security/keys/persistent.c, line 154
- security/keys/process_keys.c, line 824
Smatch caller information:
fs/crypto/keyring.c get_keyring_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-(-1),1-s32max |
security/keys/dh.c dh_data_from_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 2 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl_pkey.c keyctl_pkey_params_get() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
drivers/nvdimm/security.c nvdimm_lookup_user_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | id | s32min-(-1),1-s32max |
| NO_OVERFLOW_SIMPLE | 0 | id | |
| LOCK2 | &dev->mutex | ||
| LOCK2 | &of->mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct device)->mutex | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
kernel/crash_dump_dm_crypt.c restore_dm_crypt_keys_to_thread_keyring() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | (-4) |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| 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() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | (-2) |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| 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() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 5 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| 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/keyctl.c __do_sys_add_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $4 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c __do_sys_add_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $4 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c __do_sys_request_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $3 |
| USER_DATA | 0 | id | s32min-(-1),1-s32max |
security/keys/keyctl.c __do_sys_request_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $3 |
| USER_DATA | 0 | id | s32min-(-1),1-s32max |
security/keys/keyctl.c get_instantiation_keyring() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | 1-s32max |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $0 |
| FUZZY_MAX | 0 | id | 1 |
| USER_DATA | 0 | id | 1-s32max |
security/keys/keyctl.c keyctl_chown_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 3 |
| PARAM_VALUE | 2 | need_perm | 6 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_describe_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 1 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_describe_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 9 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_get_keyring_ID() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0-1 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| FUZZY_MAX | 1 | lflags | 1 |
| HARD_MAX | 1 | lflags | 1 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_get_security() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 1 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_get_security() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 9 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_invalidate_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_invalidate_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 8 |
| DATA_SOURCE | 0 | id | $0 |
| CAPABLE | 0 | 21 | |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_clear() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_clear() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 8 |
| DATA_SOURCE | 0 | id | $0 |
| CAPABLE | 0 | 21 | |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_link() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $1 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_link() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 5 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_move() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 5 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_move() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $1 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_move() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $2 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_search() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_search() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $3 |
| USER_DATA | 0 | id | s32min-(-1),1-s32max |
security/keys/keyctl.c keyctl_keyring_unlink() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $1 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_keyring_unlink() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 7 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_read_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 10 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_restrict_keyring() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 6 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_revoke_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_revoke_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 6 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_session_to_parent() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | (-3) |
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 5 |
security/keys/keyctl.c keyctl_set_timeout() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 3 |
| PARAM_VALUE | 2 | need_perm | 6 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_set_timeout() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 2 |
| PARAM_VALUE | 2 | need_perm | 9 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_setperm_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 3 |
| PARAM_VALUE | 2 | need_perm | 6 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_update_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/keyctl.c keyctl_watch_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 1 |
| DATA_SOURCE | 0 | id | $0 |
| USER_DATA | 0 | id | s32min-s32max |
security/keys/persistent.c keyctl_get_persistent() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 1 |
| PARAM_VALUE | 2 | need_perm | 3 |
| DATA_SOURCE | 0 | id | $1 |
| USER_DATA | 0 | id | s32min-s32max |
crypto/af_alg.c lookup_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 4 |
| DATA_SOURCE | 0 | id | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | id | s32min-s32max |
| LOCK2 | sk | ||
| HALF_LOCKED2 | &smc->clcsock_release_lock |
kernel/bpf/helpers.c bpf_lookup_user_key() -> lookup_user_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | id | s32min-(-1),3-s32max |
| PARAM_VALUE | 1 | lflags | 0 |
| PARAM_VALUE | 2 | need_perm | 10 |
| DATA_SOURCE | 0 | id | $0 |
| DATA_SOURCE | 1 | lflags | $1 |