Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
security/keys/keyctl.c keyctl_chown_key() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | subtype | 7 |
| PARAM_VALUE | 2 | aux | 0 |
| BUF_SIZE | 0 | key->user | (-1)-0,272 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | key->user->qnbytes | |
| LOCK2 | 0 | &key->sem | |
| TYPE_LOCK | (struct key)->sem |
security/keys/keyctl.c keyctl_set_timeout() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | subtype | 7 |
| PARAM_VALUE | 2 | aux | 0 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| NOCHECK_CALL |
security/keys/keyctl.c keyctl_setperm_key() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->perm | 0-1073741822 |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | subtype | 7 |
| PARAM_VALUE | 2 | aux | 0 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| BIT_INFO | 0 | key->perm | 0x0,0x3f3f3f3f |
| NOCHECK_CALL | |||
| USER_DATA | 0 | key->perm | 0-1073741822 |
| LOCK2 | 0 | &key->sem | |
| TYPE_LOCK | (struct key)->sem |
security/keys/key.c __key_instantiate_and_link() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->state | 1 |
| PARAM_VALUE | 0 | key->type | 4096-ptr_max |
| PARAM_VALUE | 0 | key->user | 4096-ptr_max |
| PARAM_VALUE | 1 | subtype | 0 |
| PARAM_VALUE | 2 | aux | 0 |
| DATA_SOURCE | 0 | key | $0 |
| STR_LEN | 0 | key | (-1)-127 |
| STR_LEN | 0 | key | (-1)-127 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | key->datalen | 0[c] |
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | key->user->qnbytes | |
| LOCK2 | global &key_construction_mutex | ||
| HALF_LOCKED2 | &keyring->sem | ||
| HALF_LOCKED2 | global &key_types_sem |
security/keys/key.c __key_update() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->datalen | 0,53-u16max |
| PARAM_VALUE | 0 | key->payload.rcu_data0 | 0,4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | key->state | 1 |
| PARAM_VALUE | 0 | key->type | 4096-ptr_max |
| PARAM_VALUE | 0 | key->type->update | 1-u64max |
| PARAM_VALUE | 0 | key->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | subtype | 1 |
| PARAM_VALUE | 2 | aux | 0 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | key->datalen | 0[c] |
| LOCK2 | global &key_types_sem | ||
| LOCK2 | 0 | &key->sem | |
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| TYPE_LOCK | (struct key)->sem |
security/keys/key.c key_invalidate() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | subtype | 6 |
| PARAM_VALUE | 2 | aux | 0 |
| BUF_SIZE | 0 | key | (-1)-s32max |
| BUF_SIZE | 0 | key | (-1)-s32max |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | key->user->qnbytes | |
| LOCK2 | 0 | &key->sem | |
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &ses->session_mutex | ||
| HALF_LOCKED2 | global &key_construction_mutex | ||
| TYPE_LOCK | (struct key)->sem |
security/keys/key.c key_reject_and_link() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->user | 4096-ptr_max |
| PARAM_VALUE | 1 | subtype | 0 |
| DATA_SOURCE | 0 | key | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | aux | 0-u32max |
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| LOCK2 | global &key_construction_mutex | ||
| HALF_LOCKED2 | &keyring->sem |
security/keys/key.c key_revoke() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | subtype | 5 |
| PARAM_VALUE | 2 | aux | 0 |
| BUF_SIZE | 0 | key | (-1)-s32max |
| BUF_SIZE | 0 | key | (-1)-s32max |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | key->user->qnbytes | |
| LOCK2 | 0 | &key->sem | |
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | global &afs_key_lock | ||
| TYPE_LOCK | (struct key)->sem |
security/keys/key.c key_update() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->payload.rcu_data0 | 0,4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | key->state | 1 |
| PARAM_VALUE | 0 | key->type | 4096-ptr_max |
| PARAM_VALUE | 0 | key->type->update | 1-u64max |
| PARAM_VALUE | 0 | key->user->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | subtype | 1 |
| PARAM_VALUE | 2 | aux | 0 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| NOCHECK_CALL | |||
| USER_DATA | 0 | key->datalen | 0-u16max[c] |
| LOCK2 | 0 | &key->sem | |
| TYPE_LOCK | (struct key)->sem |
security/keys/keyring.c __key_link() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->datalen | 4-u16max |
| PARAM_VALUE | 0 | key->sem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | subtype | 2 |
| BUF_SIZE | 0 | key | (-1)-s32max |
| BUF_SIZE | 0 | key | (-1)-s32max |
| CAPPED_DATA | 0 | key | 1 |
| DATA_SOURCE | 0 | key | $0 |
| STR_LEN | 0 | key | (-1)-127 |
| STR_LEN | 0 | key | (-1)-127 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | key->quotalen | |
| NO_OVERFLOW_SIMPLE | 0 | key->user->qnbytes | |
| HALF_LOCKED2 | &from_keyring->sem | ||
| HALF_LOCKED2 | &user->cons_lock | ||
| HALF_LOCKED2 | global &key_construction_mutex | ||
| HALF_LOCKED2 | 0 | &key->sem |
security/keys/keyring.c __key_unlink() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->type | 4096-ptr_max |
| PARAM_VALUE | 1 | subtype | 3 |
| CAPPED_DATA | 0 | key | 1 |
| DATA_SOURCE | 0 | key | $0 |
| NOCHECK_CALL | |||
| LOCK2 | 0 | &key->sem | |
| HALF_LOCKED2 | &to_keyring->sem | ||
| TYPE_LOCK | (struct key)->sem |
security/keys/keyring.c keyring_clear() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | key->type | 9142442151112187904 |
| PARAM_VALUE | 1 | subtype | 4 |
| PARAM_VALUE | 2 | aux | 0 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | $0 |
| NOCHECK_CALL | |||
| LOCK2 | 0 | &key->sem | |
| TYPE_LOCK | (struct key)->sem |
security/keys/keyring.c keyring_restrict() -> notify_key()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | key | 4096-ptr_max |
| PARAM_VALUE | 0 | key->restrict_link | 4096-ptr_max |
| PARAM_VALUE | 0 | key->sem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | key->sem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | key->sem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | key->sem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | key->sem.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | key->type | 9142442151112187904 |
| PARAM_VALUE | 1 | subtype | 7 |
| PARAM_VALUE | 2 | aux | 0 |
| BUF_SIZE | 0 | key->restrict_link | 24 |
| CAPPED_DATA | 0 | &key->sem | 1 |
| DATA_SOURCE | 0 | key | r key_ref_to_ptr |
| NOCHECK_CALL | |||
| LOCK2 | global &keyring_serialise_restrict_sem | ||
| LOCK2 | 0 | &key->sem | |
| HALF_LOCKED2 | global &key_types_sem | ||
| TYPE_LOCK | (struct key)->sem |