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:
crypto/aes.c crypto_aes_ccm_init() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 633072880490749952,9037030287502376960 |
| PARAM_VALUE | 3 | nonce | 4096-ptr_max |
| PARAM_VALUE | 4 | nonce_len | 7-13 |
| DATA_SOURCE | 0 | ctx | $0 |
| DATA_SOURCE | 1 | data_len | $2 |
| DATA_SOURCE | 5 | key | $3 |
| NOSPEC | 1 | data_len | |
| NOSPEC | 1 | data_len | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | data_len | 0-u32max |
| USER_DATA | 3 | *nonce | 0-255 |
| USER_DATA | 4 | nonce_len | 7-13[c] |
| UNITS | 1 | data_len | unit_byte |
| UNITS | 2 | ad_len | unit_byte |
| USER_PTR | 3 | nonce |
lib/crypto/aes.c aes_ccm_decrypt() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 253126797138399232 |
| PARAM_VALUE | 4 | nonce_len | 0-14,26,u32max,u64max |
| BUF_SIZE | 3 | nonce | (-1),13,16 |
| BUF_SIZE | 3 | nonce | (-1),13,16 |
| BUF_SIZE | 5 | key | (-1),264 |
| BUF_SIZE | 5 | key | (-1),264 |
| CAPPED_DATA | 4 | nonce_len | 1 |
| CAPPED_DATA | 4 | nonce_len | 1 |
| DATA_SOURCE | 1 | data_len | $2 |
| DATA_SOURCE | 2 | ad_len | $5 |
| DATA_SOURCE | 3 | nonce | $6 |
| DATA_SOURCE | 4 | nonce_len | $7 |
| DATA_SOURCE | 5 | key | $8 |
| FUZZY_MAX | 4 | nonce_len | 13 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | data_len | |
| NO_OVERFLOW_SIMPLE | 2 | ad_len | |
| NO_OVERFLOW_SIMPLE | 4 | nonce_len | |
| NO_OVERFLOW_SIMPLE | 5 | key->aes.len | |
| NO_OVERFLOW_SIMPLE | 5 | key->authtag_len | |
| UNITS | 1 | data_len | unit_byte |
| UNITS | 2 | ad_len | unit_byte |
| UNITS | 4 | nonce_len | unit_byte |
lib/crypto/aes.c aes_ccm_encrypt() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 8665162067663159296 |
| PARAM_VALUE | 4 | nonce_len | 0-14,26,u32max,u64max |
| BUF_SIZE | 3 | nonce | (-1),13,16 |
| BUF_SIZE | 3 | nonce | (-1),13,16 |
| BUF_SIZE | 5 | key | (-1),264 |
| BUF_SIZE | 5 | key | (-1),264 |
| CAPPED_DATA | 4 | nonce_len | 1 |
| CAPPED_DATA | 4 | nonce_len | 1 |
| DATA_SOURCE | 1 | data_len | $2 |
| DATA_SOURCE | 2 | ad_len | $5 |
| DATA_SOURCE | 3 | nonce | $6 |
| DATA_SOURCE | 4 | nonce_len | $7 |
| DATA_SOURCE | 5 | key | $8 |
| FUZZY_MAX | 4 | nonce_len | 13 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | data_len | |
| NO_OVERFLOW_SIMPLE | 2 | ad_len | |
| NO_OVERFLOW_SIMPLE | 4 | nonce_len | |
| NO_OVERFLOW_SIMPLE | 5 | key->aes.len | |
| NO_OVERFLOW_SIMPLE | 5 | key->authtag_len | |
| UNITS | 1 | data_len | unit_byte |
| UNITS | 2 | ad_len | unit_byte |
| UNITS | 4 | nonce_len | unit_byte |
lib/crypto/tests/aes_ccm_kunit.c aead_decrypt_incrementally() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 4096-ptr_max |
| PARAM_VALUE | 1 | data_len | 0-1024 |
| PARAM_VALUE | 2 | ad_len | 0-512 |
| PARAM_VALUE | 3 | nonce | 16,4096-ptr_max |
| PARAM_VALUE | 4 | nonce_len | 13 |
| PARAM_VALUE | 5 | key | 4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 16,24,32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 4,6,8,10,12,14,16 |
| BUF_SIZE | 0 | ctx | 96 |
| CAPPED_DATA | 1 | data_len | 1 |
| CAPPED_DATA | 1 | data_len | 1 |
| CAPPED_DATA | 2 | ad_len | 1 |
| CAPPED_DATA | 2 | ad_len | 1 |
| DATA_SOURCE | 0 | ctx | $1 |
| DATA_SOURCE | 1 | data_len | $4 |
| DATA_SOURCE | 2 | ad_len | $7 |
| DATA_SOURCE | 3 | nonce | $8 |
| DATA_SOURCE | 4 | nonce_len | $9 |
| DATA_SOURCE | 5 | key | $10 |
| NO_OVERFLOW_SIMPLE | 4 | nonce_len |
lib/crypto/tests/aes_ccm_kunit.c aead_encrypt_incrementally() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 16,4096-ptr_max |
| PARAM_VALUE | 1 | data_len | 0-1024 |
| PARAM_VALUE | 2 | ad_len | 0-512 |
| PARAM_VALUE | 3 | nonce | 16,4096-ptr_max |
| PARAM_VALUE | 4 | nonce_len | 13 |
| PARAM_VALUE | 5 | key | 16,4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 16,24,32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 4,6,8,10,12,14,16 |
| BUF_SIZE | 0 | ctx | 96 |
| CAPPED_DATA | 1 | data_len | 1 |
| CAPPED_DATA | 1 | data_len | 1 |
| CAPPED_DATA | 2 | ad_len | 1 |
| CAPPED_DATA | 2 | ad_len | 1 |
| DATA_SOURCE | 0 | ctx | $1 |
| DATA_SOURCE | 1 | data_len | $4 |
| DATA_SOURCE | 2 | ad_len | $7 |
| DATA_SOURCE | 3 | nonce | $8 |
| DATA_SOURCE | 4 | nonce_len | $9 |
| DATA_SOURCE | 5 | key | $10 |
| NO_OVERFLOW_SIMPLE | 4 | nonce_len |
lib/crypto/tests/aes_ccm_kunit.c aead_verify_invalid_nonce_len() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 4096-ptr_max |
| PARAM_VALUE | 0 | ctx->ad_padded | 0 |
| PARAM_VALUE | 0 | ctx->ad_remaining | 0 |
| PARAM_VALUE | 0 | ctx->data_remaining | 0 |
| PARAM_VALUE | 0 | ctx->key | 0 |
| PARAM_VALUE | 0 | ctx->partial_len | 0 |
| PARAM_VALUE | 1 | data_len | 64 |
| PARAM_VALUE | 2 | ad_len | 16 |
| PARAM_VALUE | 3 | nonce | 1-u64max |
| PARAM_VALUE | 4 | nonce_len | 0-14,26,u32max,u64max |
| PARAM_VALUE | 5 | key | 4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.len | 32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 16 |
| DATA_SOURCE | 4 | nonce_len | $2 |
| FUZZY_MAX | 4 | nonce_len | 13 |
| HARD_MAX | 4 | nonce_len | u64max |
| MEM_ZERO | 0 | ctx | |
| UNITS | 1 | data_len | unit_byte |
| UNITS | 2 | ad_len | unit_byte |
lib/crypto/tests/aes_ccm_kunit.c test_aes_ccm_data_len_too_large() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 7534600504306388992 |
| PARAM_VALUE | 1 | data_len | 0 |
| PARAM_VALUE | 2 | ad_len | 0 |
| PARAM_VALUE | 3 | nonce | 2240962035984670720 |
| PARAM_VALUE | 5 | key | 16,4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 16 |
| BUF_SIZE | 3 | nonce | 13 |
| BUF_SIZE | 5 | key | 264 |
| DATA_SOURCE | 5 | key | r alloc_buf |
lib/crypto/tests/aes_ccm_kunit.c test_aes_ccm_data_len_too_large() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 7534600504306388992 |
| PARAM_VALUE | 0 | ctx->ad_padded | 0 |
| PARAM_VALUE | 0 | ctx->ad_remaining | 0 |
| PARAM_VALUE | 0 | ctx->data_remaining | 0 |
| PARAM_VALUE | 0 | ctx->key | 16,4096-ptr_max |
| PARAM_VALUE | 0 | ctx->partial_len | 0,2,6,10 |
| PARAM_VALUE | 2 | ad_len | 0 |
| PARAM_VALUE | 3 | nonce | 2240962035984670720 |
| PARAM_VALUE | 4 | nonce_len | 7-13 |
| PARAM_VALUE | 5 | key | 16,4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 16 |
| BUF_SIZE | 3 | nonce | 13 |
| BUF_SIZE | 5 | key | 264 |
| DATA_SOURCE | 5 | key | r alloc_buf |
lib/crypto/tests/aes_ccm_kunit.c test_aes_ccm_data_len_too_large() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 7534600504306388992 |
| PARAM_VALUE | 0 | ctx->ad_padded | 0 |
| PARAM_VALUE | 0 | ctx->ad_remaining | 0 |
| PARAM_VALUE | 0 | ctx->data_remaining | 0-18446744073709551614 |
| PARAM_VALUE | 0 | ctx->key | 16,4096-ptr_max |
| PARAM_VALUE | 0 | ctx->partial_len | 0,2,6,10 |
| PARAM_VALUE | 1 | data_len | 1-u64max |
| PARAM_VALUE | 2 | ad_len | 0 |
| PARAM_VALUE | 3 | nonce | 2240962035984670720 |
| PARAM_VALUE | 4 | nonce_len | 7-13 |
| PARAM_VALUE | 5 | key | 16,4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 16 |
| BUF_SIZE | 3 | nonce | 13 |
| BUF_SIZE | 5 | key | 264 |
| CAPPED_DATA | 1 | data_len | 1 |
| DATA_SOURCE | 5 | key | r alloc_buf |
lib/crypto/tests/aes_ccm_kunit.c test_aes_ccm_data_len_too_large() -> aes_ccm_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ctx | 7534600504306388992 |
| PARAM_VALUE | 0 | ctx->ad_padded | 0 |
| PARAM_VALUE | 0 | ctx->ad_remaining | 0 |
| PARAM_VALUE | 0 | ctx->data_remaining | 1-u64max |
| PARAM_VALUE | 0 | ctx->key | 16,4096-ptr_max |
| PARAM_VALUE | 0 | ctx->partial_len | 0,2,6,10 |
| PARAM_VALUE | 1 | data_len | u64max |
| PARAM_VALUE | 2 | ad_len | 0 |
| PARAM_VALUE | 3 | nonce | 2240962035984670720 |
| PARAM_VALUE | 4 | nonce_len | 7-13 |
| PARAM_VALUE | 5 | key | 16,4096-ptr_max |
| PARAM_VALUE | 5 | key->aes.k->rndkeys | 0-255 |
| PARAM_VALUE | 5 | key->aes.len | 32 |
| PARAM_VALUE | 5 | key->aes.nrounds | 10,12,14 |
| PARAM_VALUE | 5 | key->authtag_len | 16 |
| BUF_SIZE | 3 | nonce | 13 |
| BUF_SIZE | 5 | key | 264 |
| DATA_SOURCE | 5 | key | r alloc_buf |