Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 8 files:
- certs/system_keyring.c
- net/handshake/tlshd.c, line 135
- net/rxrpc/rxperf.c
- security/keys/keyctl.c
- security/keys/keyring.c, line 1472
- security/keys/persistent.c, line 114
- security/keys/process_keys.c
- security/keys/request_key.c
Smatch caller information:
security/keys/request_key.c call_sbin_request_key() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->index_key->desc | 0-255 |
| PARAM_VALUE | 0 | keyring->index_key.description | 1-u64max |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.func | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.next | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->removed | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 0 | keyring->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 0 | keyring->security | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.count.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter | 0 |
| PARAM_VALUE | 0 | keyring->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.owner.counter | 0 |
| PARAM_VALUE | 0 | keyring->serial | 3-s32max |
| PARAM_VALUE | 0 | keyring->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | keyring->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->user | 1-u64max |
| PARAM_VALUE | 0 | keyring->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 1 | key->index_key->desc | 0-255 |
| PARAM_VALUE | 1 | key->index_key.description | 1-u64max |
| PARAM_VALUE | 1 | key->index_key.domain_tag->rcu.func | 0 |
| PARAM_VALUE | 1 | key->index_key.domain_tag->rcu.next | 0 |
| PARAM_VALUE | 1 | key->index_key.domain_tag->removed | 0 |
| PARAM_VALUE | 1 | key->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 1 | key->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 1 | key->security | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->sem.count.counter | 0 |
| PARAM_VALUE | 1 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key->sem.first_waiter | 0 |
| PARAM_VALUE | 1 | key->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 1 | key->sem.osq.tail.counter | 0 |
| PARAM_VALUE | 1 | key->sem.owner.counter | 0 |
| PARAM_VALUE | 1 | key->serial | 3-s32max |
| PARAM_VALUE | 1 | key->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 1 | key->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 1 | key->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 1 | key->type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->user | 1-u64max |
| PARAM_VALUE | 1 | key->user->lock.rlock.dep_map->name | 0-255 |
| DATA_SOURCE | 0 | keyring | r keyring_alloc |
| DATA_SOURCE | 1 | key | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes | |
| NO_OVERFLOW_SIMPLE | 1 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 1 | key->user->qnbytes | |
| HALF_LOCKED2 | &idmap->idmap_mutex | ||
| HALF_LOCKED2 | global &key_types_sem |
security/keys/request_key.c request_key_and_link() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 1 | key | 0,4096-ptr_max |
| DATA_SOURCE | 0 | keyring | $6 |
| DATA_SOURCE | 1 | key | r key_ref_to_ptr |
| RX_PATH | |||
| LOCK2 | global &key_types_sem |
net/handshake/tlshd.c tls_handshake_private_keyring() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key | 0,4096-ptr_max |
| 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/rxrpc/rxperf.c rxperf_add_rxkad_key() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->index_key->desc | 0-255 |
| PARAM_VALUE | 0 | keyring->index_key.description | 1-u64max |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.func | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.next | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->removed | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 0 | keyring->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 0 | keyring->security | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.count.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter | 0 |
| PARAM_VALUE | 0 | keyring->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.owner.counter | 0 |
| PARAM_VALUE | 0 | keyring->serial | 3-s32max |
| PARAM_VALUE | 0 | keyring->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | keyring->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->user | 1-u64max |
| PARAM_VALUE | 0 | keyring->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| DATA_SOURCE | 0 | keyring | $0 |
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes |
net/rxrpc/rxperf.c rxperf_add_yfs_rxgk_key() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->index_key->desc | 0-255 |
| PARAM_VALUE | 0 | keyring->index_key.description | 1-u64max |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.func | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->rcu.next | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->removed | 0 |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 0 | keyring->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 0 | keyring->security | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | keyring->serial | 3-s32max |
| PARAM_VALUE | 0 | keyring->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | keyring->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->user | 1-u64max |
| PARAM_VALUE | 0 | keyring->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| CAPPED_DATA | 0 | keyring | 1 |
| DATA_SOURCE | 0 | keyring | $0 |
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes |
security/keys/keyctl.c keyctl_keyring_link() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key | 0,4096-ptr_max |
security/keys/keyctl.c keyctl_keyring_search() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| LOCK2 | global &key_types_sem |
security/keys/persistent.c key_get_persistent() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key | 0,2-u64max |
| DATA_SOURCE | 1 | key | r key_ref_to_ptr |
certs/system_keyring.c set_machine_trusted_keys() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| DATA_SOURCE | 1 | key | $0 |
certs/system_keyring.c system_trusted_keyring_init() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->index_key->desc | 0-255 |
| PARAM_VALUE | 0 | keyring->index_key.description | 1-u64max |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 0 | keyring->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 0 | keyring->security | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.count.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter | 0 |
| PARAM_VALUE | 0 | keyring->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.owner.counter | 0 |
| PARAM_VALUE | 0 | keyring->serial | 3-s32max |
| PARAM_VALUE | 0 | keyring->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | keyring->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->user | 1-u64max |
| PARAM_VALUE | 0 | keyring->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 1 | key->index_key->desc | 0-255 |
| PARAM_VALUE | 1 | key->index_key.description | 1-u64max |
| PARAM_VALUE | 1 | key->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 1 | key->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 1 | key->security | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->sem.count.counter | 0 |
| PARAM_VALUE | 1 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key->sem.first_waiter | 0 |
| PARAM_VALUE | 1 | key->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 1 | key->sem.owner.counter | 0 |
| PARAM_VALUE | 1 | key->serial | 3-s32max |
| PARAM_VALUE | 1 | key->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 1 | key->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 1 | key->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 1 | key->type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->user | 1-u64max |
| PARAM_VALUE | 1 | key->user->lock.rlock.dep_map->name | 0-255 |
| DATA_SOURCE | 0 | keyring | r keyring_alloc |
| DATA_SOURCE | 1 | key | r keyring_alloc |
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes | |
| NO_OVERFLOW_SIMPLE | 1 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 1 | key->user->qnbytes |
security/keys/process_keys.c look_up_user_keyrings() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->index_key->desc | 0-255 |
| PARAM_VALUE | 0 | keyring->index_key.description | 1-u64max |
| PARAM_VALUE | 0 | keyring->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 0 | keyring->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 0 | keyring->security | 0,4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.count.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter | 0 |
| PARAM_VALUE | 0 | keyring->sem.magic | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.osq.tail.counter | 0 |
| PARAM_VALUE | 0 | keyring->sem.owner.counter | 0 |
| PARAM_VALUE | 0 | keyring->serial | 3-s32max |
| PARAM_VALUE | 0 | keyring->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 0 | keyring->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->type | 4096-ptr_max |
| PARAM_VALUE | 0 | keyring->user | 1-u64max |
| PARAM_VALUE | 0 | keyring->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| DATA_SOURCE | 0 | keyring | r keyring_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes | |
| NO_OVERFLOW_SIMPLE | 1 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 1 | key->user->qnbytes | |
| LOCK2 | &user_ns->keyring_sem | ||
| TYPE_LOCK | (struct user_namespace)->keyring_sem |
security/keys/process_keys.c look_up_user_keyrings() -> key_link()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | keyring | 0-ptr_max |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | keyring->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->domain_tag | 4096-ptr_max |
| PARAM_VALUE | 1 | key->index_key->desc | 0-255 |
| PARAM_VALUE | 1 | key->index_key.description | 1-u64max |
| PARAM_VALUE | 1 | key->index_key.domain_tag->usage.refs.counter | 1 |
| PARAM_VALUE | 1 | key->index_key.type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->restrict_link->check | 2597709569863184384,5988328617028292608,6748553998896947200,6954271548785111040,7527111731098238976 |
| PARAM_VALUE | 1 | key->security | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 1 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 1 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | key->serial | 3-s32max |
| PARAM_VALUE | 1 | key->serial_node.__rb_parent_color | 1 |
| PARAM_VALUE | 1 | key->serial_node.rb_left | 4096-ptr_max |
| PARAM_VALUE | 1 | key->serial_node.rb_right | 4096-ptr_max |
| PARAM_VALUE | 1 | key->type | 4096-ptr_max |
| PARAM_VALUE | 1 | key->user | 1-u64max |
| PARAM_VALUE | 1 | key->user->lock.rlock.dep_map->name | 0-255 |
| BUF_SIZE | 0 | keyring | (-1)-s32max |
| BUF_SIZE | 0 | keyring | (-1)-s32max |
| CAPPED_DATA | 1 | key | 1 |
| DATA_SOURCE | 1 | key | r keyring_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | keyring->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | keyring->user->qnbytes | |
| NO_OVERFLOW_SIMPLE | 1 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 1 | key->user->qnbytes | |
| LOCK2 | &user_ns->keyring_sem | ||
| TYPE_LOCK | (struct user_namespace)->keyring_sem |