Defined in 2 files as a variable:

Defined in 1 files as a prototype:

Defined in 1 files as a member:

Defined in 2 files as a label:

Defined in 2 files as a function:

Referenced in 14 files:

Smatch caller information:

net/dns_resolver/dns_key.c dns_resolver_read() -> user_read()

Type Parameter Key Value
PARAM_VALUE 0 key 4096-ptr_max
PARAM_VALUE 0 key->expiry (-9223372036854775807)-s64max
PARAM_VALUE 0 key->payload.data 4096-ptr_max
PARAM_VALUE 0 key->sem.dep_map->name 0-255
PARAM_VALUE 0 key->sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 key->sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 key->sem.first_waiter->list.prev 2212933610777083904
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 0 key->type 4096-ptr_max
PARAM_VALUE 2 buflen 0-9223372036854775807
BUF_SIZE 1 buffer (-1)-s32max
BUF_SIZE 1 buffer (-1)-s32max
CAPPED_DATA 0 key->expiry 1
CAPPED_DATA 2 buflen 1
CAPPED_DATA 2 buflen 1
DATA_SOURCE 0 key $0
DATA_SOURCE 1 buffer $1
DATA_SOURCE 2 buflen $2
NOSPEC 2 buflen
NOSPEC 2 buflen
USER_DATA 1 *buffer 0-255
USER_DATA 2 buflen 1-4096[c]
USER_PTR 1 buffer
LOCK2 0 &key->sem
TYPE_LOCK (struct key)->sem

block/sed-opal.c read_sed_opal_key() -> (struct key_type)->read()

Type Parameter Key Value
PARAM_VALUE 0 key 4096-ptr_max
PARAM_VALUE 0 key->expiry (-9223372036854775807)-s64max
PARAM_VALUE 0 key->sem.dep_map->name 0-255
PARAM_VALUE 0 key->sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 key->sem.first_waiter->list.prev 2212933610777083904
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 0 key->type 4096-ptr_max
PARAM_VALUE 2 buflen 0-256
BUF_SIZE 1 buffer 256
BUF_SIZE 1 buffer 256
CAPPED_DATA 0 key->expiry 1
CAPPED_DATA 0 &key->sem 1
DATA_SOURCE 0 key r key_ref_to_ptr
DATA_SOURCE 1 buffer $1
DATA_SOURCE 2 buflen $2 [m]
CAPABLE 0 21
PARAM_COMPARE 2 buflen <= $0->datalen
USER_DATA 1 *buffer 0-255
USER_PTR 1 buffer
LOCK2 0 &key->sem
HALF_LOCKED2 &dev->dev_lock
TYPE_LOCK (struct key)->sem

security/keys/keyctl.c __keyctl_read_key() -> (struct key_type)->read()

Type Parameter Key Value
PARAM_VALUE 0 key 4096-ptr_max
PARAM_VALUE 0 key->expiry (-9223372036854775807)-s64max
PARAM_VALUE 0 key->sem.dep_map->name 0-255
PARAM_VALUE 0 key->sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 key->sem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 key->sem.first_waiter->list.prev 2212933610777083904
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 0 key->type 4096-ptr_max
PARAM_VALUE 0 key->type->read 1-u64max
PARAM_VALUE 1 buffer 0,16,4096-ptr_max
PARAM_VALUE 2 buflen 0-9223372036854775807
BUF_SIZE 1 buffer (-1)-s32max
BUF_SIZE 1 buffer (-1)-s32max
CAPPED_DATA 0 key->expiry 1
CAPPED_DATA 0 &key->sem 1
CAPPED_DATA 2 buflen 1
CAPPED_DATA 2 buflen 1
DATA_SOURCE 0 key $0
DATA_SOURCE 1 buffer $1
DATA_SOURCE 2 buflen $2
NOSPEC 2 buflen
NOSPEC 2 buflen
USER_DATA 2 buflen 1-4096[c]
LOCK2 0 &key->sem
TYPE_LOCK (struct key)->sem

security/selinux/ss/policydb.c policydb_read() -> read_f[]()

Type Parameter Key Value
PARAM_VALUE 0 key 4096-ptr_max
PARAM_VALUE 0 key->bool_val_to_struct 0
PARAM_VALUE 0 key->class_val_to_struct 0
PARAM_VALUE 0 key->compat_filename_trans_count 0
PARAM_VALUE 0 key->cond_list 0
PARAM_VALUE 0 key->cond_list_len 0
PARAM_VALUE 0 key->filename_trans.htable 0
PARAM_VALUE 0 key->filename_trans.nel 0
PARAM_VALUE 0 key->filename_trans.size 0
PARAM_VALUE 0 key->filename_trans_ttypes.highbit 0
PARAM_VALUE 0 key->filename_trans_ttypes.node 0
PARAM_VALUE 0 key->genfs 0
PARAM_VALUE 0 key->len 0
PARAM_VALUE 0 key->mls_enabled 0-1
PARAM_VALUE 0 key->neveraudit_map.node 0,4096-ptr_max
PARAM_VALUE 0 key->neveraudit_map.node->startbit 1-u32max
PARAM_VALUE 0 key->permissive_map.node 0,4096-ptr_max
PARAM_VALUE 0 key->permissive_map.node->startbit 1-u32max
PARAM_VALUE 0 key->policycaps.node 0,4096-ptr_max
PARAM_VALUE 0 key->policycaps.node->startbit 1-u32max
PARAM_VALUE 0 key->process_class 0
PARAM_VALUE 0 key->process_trans_perms 0
PARAM_VALUE 0 key->range_tr.htable 0
PARAM_VALUE 0 key->range_tr.nel 0
PARAM_VALUE 0 key->range_tr.size 0
PARAM_VALUE 0 key->role_allow 0
PARAM_VALUE 0 key->role_tr.htable 0
PARAM_VALUE 0 key->role_tr.nel 0
PARAM_VALUE 0 key->role_tr.size 0
PARAM_VALUE 0 key->role_val_to_struct 0
PARAM_VALUE 0 key->te_avtab.htable 0
PARAM_VALUE 0 key->te_avtab.mask 0
PARAM_VALUE 0 key->te_avtab.nel 0
PARAM_VALUE 0 key->te_avtab.nslot 0
PARAM_VALUE 0 key->te_cond_avtab.htable 0
PARAM_VALUE 0 key->te_cond_avtab.mask 0
PARAM_VALUE 0 key->te_cond_avtab.nel 0
PARAM_VALUE 0 key->te_cond_avtab.nslot 0
PARAM_VALUE 0 key->type_attr_map_array 0
PARAM_VALUE 0 key->type_val_to_struct 0
PARAM_VALUE 0 key->user_val_to_struct 0
PARAM_VALUE 2 buflen 6801050872897380352
PARAM_VALUE 2 buflen->data 4096-ptr_max
BUF_SIZE 2 buflen 16
CAPPED_DATA 0 key->policyvers 1
DATA_SOURCE 0 key $0
DATA_SOURCE 2 buflen $1
FUZZY_MAX 0 key->mls_enabled 1
BIT_INFO 0 key->policyvers 0xf97cff8c,0xffffffffffffffff
NOSPEC 2 buflen->len
MEM_ZERO 0 key
MEM_ZERO 0 &key->filename_trans_ttypes
MEM_ZERO 0 &key->neveraudit_map
MEM_ZERO 0 &key->permissive_map
MEM_ZERO 0 &key->policycaps
USER_DATA 2 buflen->len 0-1000000000[c]
NO_OVERFLOW_SIMPLE 2 buflen->len
USER_PTR 2 buflen->data
LOCK2 global &selinux_state.policy_mutex
TYPE_LOCK (struct selinux_state)->policy_mutex