Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/nvme/host/auth.c nvme_auth_dhchap_exponential() -> nvme_auth_gen_session_key()

Type Parameter Key Value
PARAM_VALUE 0 dh_tfm 0-ptr_max
PARAM_VALUE 1 public_key 0,4096-ptr_max
PARAM_VALUE 2 public_key_len 1-u16max
PARAM_VALUE 3 sess_key 16,4096-ptr_max
PARAM_VALUE 4 sess_key_len 0-255
PARAM_VALUE 5 hash_id 0-3
BUF_SIZE 1 public_key 1-u16max
BUF_SIZE 3 sess_key 0-255
BUF_SIZE 3 sess_key 0-255
DATA_SOURCE 3 sess_key r _kmalloc_noprof
UNITS 2 public_key_len unit_byte
UNITS 4 sess_key_len unit_byte
UNITS 5 hash_id unit_array_size
BYTE_COUNT 3 ==sess_key4 8050
HALF_LOCKED2 &pool->lock

drivers/nvme/target/auth.c nvmet_auth_ctrl_sesskey() -> nvme_auth_gen_session_key()

Type Parameter Key Value
PARAM_VALUE 0 dh_tfm 1-u64max
PARAM_VALUE 1 public_key 4096-ptr_max
PARAM_VALUE 2 public_key_len 1-u16max
PARAM_VALUE 3 sess_key 16,4096-ptr_max
PARAM_VALUE 4 sess_key_len 0-4000000
BUF_SIZE 3 sess_key 0-s32max,18446744071562067968-u64max
BUF_SIZE 3 sess_key 0-s32max,18446744071562067968-u64max
DATA_SOURCE 1 public_key $1
DATA_SOURCE 2 public_key_len $2
DATA_SOURCE 3 sess_key r _kzalloc_noprof
DATA_SOURCE 4 sess_key_len r nvme_auth_hmac_hash_len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 *public_key 0-255
USER_DATA 2 public_key_len 1-u16max[u]
UNITS 2 public_key_len unit_byte
UNITS 5 hash_id unit_array_size
BYTE_COUNT 3 ==sess_key4 8050
USER_PTR 1 public_key
HALF_LOCKED2 &pool->lock