Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/bluetooth/mgmt.c load_long_term_keys() -> hci_add_ltk()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->features 4096-ptr_max
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 bdaddr 4096-ptr_max
PARAM_VALUE 2 addr_type 0-1
PARAM_VALUE 3 type 1-3
PARAM_VALUE 4 authenticated 0-1
PARAM_VALUE 6 enc_size 0-16
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 0 hdev (-1)-s32max
BUF_SIZE 5 tk 16
CAPPED_DATA 0 &hdev->lock 1
DATA_SOURCE 0 hdev $1
FUZZY_MAX 3 type 3
FUZZY_MAX 4 authenticated 1
HARD_MAX 3 type 3
HARD_MAX 4 authenticated 1
HARD_MAX 6 enc_size 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 6 enc_size 0-16[u]
USER_DATA 7 ediv 0-u16max[u]
USER_DATA 8 rand 0-u64max[u]
UNITS 6 enc_size unit_byte
USER_PTR 5 tk
LOCK2 global &mgmt_chan_list_lock
LOCK2 sk
LOCK2 0 &hdev->lock
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk
TYPE_LOCK (struct hci_dev)->lock

net/bluetooth/smp.c sc_add_ltk() -> hci_add_ltk()

Type Parameter Key Value
PARAM_VALUE 1 bdaddr 4096-ptr_max
PARAM_VALUE 3 type 3-4
PARAM_VALUE 4 authenticated 0-1
PARAM_VALUE 7 ediv 0
PARAM_VALUE 8 rand 0
BUF_SIZE 5 tk 16
FUZZY_MAX 3 type 4
FUZZY_MAX 4 authenticated 1
HARD_MAX 3 type 4
HARD_MAX 4 authenticated 1
RX_PATH
TASK_NOT_RUNNING
UNITS 6 enc_size unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 global &mgmt_chan_list_lock

net/bluetooth/smp.c smp_cmd_initiator_ident() -> hci_add_ltk()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 bdaddr 4096-ptr_max
PARAM_VALUE 3 type 1
PARAM_VALUE 4 authenticated 0-1
BUF_SIZE 5 tk 16
FUZZY_MAX 4 authenticated 1
HARD_MAX 4 authenticated 1
RX_PATH
USER_DATA 7 ediv 0-u16max[u]
USER_DATA 8 rand 0-u64max[u]
UNITS 6 enc_size unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_distribute_keys() -> hci_add_ltk()

Type Parameter Key Value
PARAM_VALUE 1 bdaddr 4096-ptr_max
PARAM_VALUE 3 type 2
PARAM_VALUE 4 authenticated 0-1
BUF_SIZE 5 tk 16
FUZZY_MAX 4 authenticated 1
HARD_MAX 4 authenticated 1
RX_PATH
UNITS 6 enc_size unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_random() -> hci_add_ltk()

Type Parameter Key Value
PARAM_VALUE 1 bdaddr 4096-ptr_max
PARAM_VALUE 3 type 0
PARAM_VALUE 4 authenticated 0-1
PARAM_VALUE 7 ediv 0
PARAM_VALUE 8 rand 0
BUF_SIZE 5 tk 16
FUZZY_MAX 4 authenticated 1
HARD_MAX 4 authenticated 1
RX_PATH
NOCHECK_CALL
UNITS 6 enc_size unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock