Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/bluetooth/smp.c sc_check_confirm() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c sc_dhkey_check() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 13
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 8238910667217625088
BUF_SIZE 3 data 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len 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 sc_passkey_round() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c sc_passkey_round() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len 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 sc_passkey_send_confirm() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 3
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 1014889459929554944
BUF_SIZE 3 data 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock

net/bluetooth/smp.c sc_send_public_key() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->dev_flags 4096-ptr_max
PARAM_VALUE 1 code 12
PARAM_VALUE 2 len 64
BUF_SIZE 3 data 64
RX_PATH
NOCHECK_CALL
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_pairing_confirm() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
DATA_SOURCE 0 conn $0
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_pairing_random() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
DATA_SOURCE 0 conn $0
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_pairing_random() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
DATA_SOURCE 0 conn $0
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_pairing_req() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->smp_data 4096-ptr_max
PARAM_VALUE 0 conn->hcon->type 1
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 2
PARAM_VALUE 2 len 6
PARAM_VALUE 3 data 713360623887872000
BUF_SIZE 3 data 6
DATA_SOURCE 0 conn $0
MEM_ZERO 3 data
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_pairing_req() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->smp_data 4096-ptr_max
PARAM_VALUE 0 conn->hcon->pending_sec_level 2-255
PARAM_VALUE 0 conn->hcon->type 0,2-255
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 0 conn->smp->data 4096-ptr_max
PARAM_VALUE 0 conn->smp->data->enc_key_size 7-255
PARAM_VALUE 0 conn->smp->data->remote_key_dist 0-15
PARAM_VALUE 0 *conn->smp->data->pcnf 0-255
PARAM_VALUE 0 *conn->smp->data->rr 0-255
PARAM_VALUE 1 code 2
PARAM_VALUE 2 len 6
PARAM_VALUE 3 data 713360623887872000
BUF_SIZE 3 data 6
CAPPED_DATA 0 conn->hcon->pending_sec_level 1
DATA_SOURCE 0 conn $0
FUZZY_MAX 0 conn->hcon->pending_sec_level 3
RX_PATH
NOCHECK_CALL
USER_DATA 0 conn->smp->data->remote_key_dist 0-15[c]
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_public_key() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->pending_sec_level 4
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
DATA_SOURCE 0 conn $0
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_cmd_public_key() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->pending_sec_level 2,4
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 3
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 4502626276457189376
BUF_SIZE 3 data 16
DATA_SOURCE 0 conn $0
FUZZY_MAX 0 conn->hcon->pending_sec_level 4
HARD_MAX 0 conn->hcon->pending_sec_level 4
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_confirm() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 3
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 1915151215292149760
BUF_SIZE 3 data 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 global &mgmt_chan_list_lock
HALF_LOCKED2 sk

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

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 6
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 4752058257556496384
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len 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() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->smp 0,4096-ptr_max
PARAM_VALUE 0 conn->smp->ack_timer.work.entry.next->next 1-u64max
PARAM_VALUE 0 conn->smp->ack_timer.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 conn->smp->ack_timer.work.entry.prev->next 1-u64max
PARAM_VALUE 0 conn->smp->ack_timer.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 conn->smp->conn->hchan->data_q.next 4096-ptr_max
PARAM_VALUE 0 conn->smp->conn->hchan->data_q.prev 4096-ptr_max
PARAM_VALUE 0 conn->smp->conn->hchan->data_q.prev->next->next 4096-ptr_max
PARAM_VALUE 0 conn->smp->conn->hcon->dev->kobj.release.timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 conn->smp->data 0,4096-ptr_max
PARAM_VALUE 0 conn->smp->data->security_timer.cpu s32min-s32max
PARAM_VALUE 0 conn->smp->data->security_timer.work.lockdep_map->name 0-255
PARAM_VALUE 0 conn->smp->lock->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 conn->smp->lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 conn->smp->monitor_timer->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 conn->smp->monitor_timer.work.entry.next->next 1-u64max
PARAM_VALUE 0 conn->smp->monitor_timer.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 conn->smp->monitor_timer.work.entry.prev->next 1-u64max
PARAM_VALUE 0 conn->smp->monitor_timer.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 conn->smp->retrans_timer.work.entry.next->next 1-u64max
PARAM_VALUE 0 conn->smp->retrans_timer.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 conn->smp->retrans_timer.work.entry.prev->next 1-u64max
PARAM_VALUE 0 conn->smp->retrans_timer.work.entry.prev->prev 1-u64max
PARAM_VALUE 0 conn->smp->srej_list->list u16max
PARAM_VALUE 0 conn->smp->srej_q.next->prev 2011684551238094848
PARAM_VALUE 0 conn->smp->srej_q.prev->next 2011684551238094848
PARAM_VALUE 0 conn->smp->tx_q.prev->next 4096-7971830146572820479,7971830146572820481-ptr_max
PARAM_VALUE 1 code 7
PARAM_VALUE 2 len 10
PARAM_VALUE 3 data 8429948435283607552
BUF_SIZE 3 data 10
CAPPED_DATA 0 conn->smp 1
RX_PATH
NOCHECK_CALL
UNITS 2 len 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() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 8
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 4249855213324640256
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len 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() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->smp 0,4096-ptr_max
PARAM_VALUE 1 code 9
PARAM_VALUE 2 len 7
PARAM_VALUE 3 data 2656941093192462336
BUF_SIZE 3 data 7
RX_PATH
NOCHECK_CALL
UNITS 2 len 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() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 10
PARAM_VALUE 2 len 16
PARAM_VALUE 3 data 125563886680768512
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_failure() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 1 code 5
PARAM_VALUE 2 len 1
PARAM_VALUE 3 *data 1,3-8,10-12,14-15
BUF_SIZE 0 conn (-1),896
BUF_SIZE 0 conn (-1),896
DATA_SOURCE 0 conn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 global &mgmt_chan_list_lock
HALF_LOCKED2 sk

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

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 1 code 4
PARAM_VALUE 2 len 16
BUF_SIZE 3 data 16
RX_PATH
NOCHECK_CALL
UNITS 2 len unit_byte
LOCK2 &conn->lock
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct l2cap_conn)->lock

net/bluetooth/smp.c smp_send_pairing_req() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev 4096-ptr_max
PARAM_VALUE 0 conn->hcon->hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 0 conn->smp->data 4096-ptr_max
PARAM_VALUE 0 conn->smp->data->remote_key_dist 0,2,5,7-8,10,13,15
PARAM_VALUE 0 *conn->smp->data->pcnf 0-255
PARAM_VALUE 0 *conn->smp->data->rr 0-255
PARAM_VALUE 1 code 1
PARAM_VALUE 2 len 6
PARAM_VALUE 3 data 3285437846193831936
BUF_SIZE 0 conn (-1),896
BUF_SIZE 0 conn (-1),896
BUF_SIZE 3 data 6
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock

net/bluetooth/smp.c smp_send_security_req() -> smp_send_cmd()

Type Parameter Key Value
PARAM_VALUE 0 conn 4096-ptr_max
PARAM_VALUE 0 conn->hcon 4096-ptr_max
PARAM_VALUE 0 conn->smp 4096-ptr_max
PARAM_VALUE 1 code 11
PARAM_VALUE 2 len 1
PARAM_VALUE 3 data 5971491272774606848
BUF_SIZE 0 conn 896
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &chan->lock
HALF_LOCKED2 &conn->lock
HALF_LOCKED2 global &hci_cb_list_lock
HALF_LOCKED2 sk
TYPE_LOCK (struct l2cap_chan)->lock