| NVIDIA DOCA SDK | Data Center on a Chip Framework Documentation |
Typedefs | |
| typedef void(* | doca_aes_gcm_task_encrypt_completion_cb_t) (struct doca_aes_gcm_task_encrypt *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on aes_gcm encrypt task completion. More... | |
| typedef void(* | doca_aes_gcm_task_decrypt_completion_cb_t) (struct doca_aes_gcm_task_decrypt *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on aes_gcm decrypt task completion. More... | |
Enumerations | |
| enum | doca_aes_gcm_key_type { DOCA_AES_GCM_KEY_128 = 1 , DOCA_AES_GCM_KEY_256 = 2 } |
| AES-GCM key type. More... | |
Functions | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_create (struct doca_dev *dev, struct doca_aes_gcm **aes_gcm) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_destroy (struct doca_aes_gcm *aes_gcm) |
| DOCA_EXPERIMENTAL struct doca_ctx * | doca_aes_gcm_as_ctx (struct doca_aes_gcm *aes_gcm) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_get_max_num_tasks (struct doca_aes_gcm *aes_gcm, uint32_t *max_num_tasks) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_key_create (struct doca_aes_gcm *aes_gcm, const void *raw_key, enum doca_aes_gcm_key_type raw_key_type, struct doca_aes_gcm_key **key) |
| Create an AES-GCM key from the user raw key to send with the task to allow encrypt/decrypt operations. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_key_destroy (struct doca_aes_gcm_key *key) |
| Destroy AES-GCM key that was created in doca_aes_gcm_key_create. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_is_supported (const struct doca_devinfo *devinfo) |
| Check if a aes_gcm encrypt task is supported by a device. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_get_max_iv_len (const struct doca_devinfo *devinfo, uint32_t *max_iv_len) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_is_tag_96_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_is_tag_128_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_is_key_type_supported (const struct doca_devinfo *devinfo, enum doca_aes_gcm_key_type key_type) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_get_max_buf_size (const struct doca_devinfo *devinfo, uint64_t *max_buffer_size) |
| Get aes_gcm encrypt max buffer size. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_encrypt_get_max_list_buf_num_elem (const struct doca_devinfo *devinfo, uint32_t *max_list_num_elem) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_task_encrypt_set_conf (struct doca_aes_gcm *aes_gcm, doca_aes_gcm_task_encrypt_completion_cb_t task_completion_cb, doca_aes_gcm_task_encrypt_completion_cb_t task_error_cb, uint32_t num_tasks) |
| This method sets the aes_gcm encrypt task configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_task_encrypt_alloc_init (struct doca_aes_gcm *aes_gcm, struct doca_buf const *src_buff, struct doca_buf *dst_buff, struct doca_aes_gcm_key *key, const uint8_t *iv, uint32_t iv_length, uint32_t tag_size, uint32_t aad_size, union doca_data user_data, struct doca_aes_gcm_task_encrypt **task) |
| Allocate aes_gcm encrypt task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_aes_gcm_task_encrypt_as_task (struct doca_aes_gcm_task_encrypt *task) |
| convert aes_gcm encrypt task to doca_task More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_src (struct doca_aes_gcm_task_encrypt *task, struct doca_buf const *src_buff) |
| set aes_gcm encrypt task source More... | |
| DOCA_EXPERIMENTAL struct doca_buf const * | doca_aes_gcm_task_encrypt_get_src (const struct doca_aes_gcm_task_encrypt *task) |
| get aes_gcm encrypt task source More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_dst (struct doca_aes_gcm_task_encrypt *task, struct doca_buf *dst_buff) |
| set aes_gcm encrypt task destination More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_aes_gcm_task_encrypt_get_dst (const struct doca_aes_gcm_task_encrypt *task) |
| get aes_gcm encrypt task destination More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_key (struct doca_aes_gcm_task_encrypt *task, struct doca_aes_gcm_key *key) |
| set aes_gcm encrypt task doca_aes_gcm_key More... | |
| DOCA_EXPERIMENTAL struct doca_aes_gcm_key * | doca_aes_gcm_task_encrypt_get_key (const struct doca_aes_gcm_task_encrypt *task) |
| get aes_gcm encrypt task doca_aes_gcm_key More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_iv (struct doca_aes_gcm_task_encrypt *task, const uint8_t *iv, uint32_t iv_length) |
| set aes_gcm encrypt task initialization vector More... | |
| DOCA_EXPERIMENTAL const uint8_t * | doca_aes_gcm_task_encrypt_get_iv (const struct doca_aes_gcm_task_encrypt *task, uint32_t *iv_length) |
| get aes_gcm encrypt task initialization vector More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_tag_size (struct doca_aes_gcm_task_encrypt *task, uint32_t tag_size) |
| set aes_gcm encrypt task authentication tag size More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_aes_gcm_task_encrypt_get_tag_size (const struct doca_aes_gcm_task_encrypt *task) |
| get aes_gcm encrypt task authentication tag size More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_encrypt_set_aad_size (struct doca_aes_gcm_task_encrypt *task, uint32_t aad_size) |
| set aes_gcm encrypt task additional authenticated data size More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_aes_gcm_task_encrypt_get_aad_size (const struct doca_aes_gcm_task_encrypt *task) |
| get aes_gcm encrypt task additional authenticated data size More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_is_supported (const struct doca_devinfo *devinfo) |
| Check if a aes_gcm decrypt task is supported by a device. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_get_max_iv_len (const struct doca_devinfo *devinfo, uint32_t *max_iv_len) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_is_tag_96_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_is_tag_128_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_is_key_type_supported (const struct doca_devinfo *devinfo, enum doca_aes_gcm_key_type key_type) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_get_max_buf_size (const struct doca_devinfo *devinfo, uint64_t *max_buffer_size) |
| Get aes_gcm decrypt max buffer size. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_cap_task_decrypt_get_max_list_buf_num_elem (const struct doca_devinfo *devinfo, uint32_t *max_list_num_elem) |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_task_decrypt_set_conf (struct doca_aes_gcm *aes_gcm, doca_aes_gcm_task_decrypt_completion_cb_t task_completion_cb, doca_aes_gcm_task_decrypt_completion_cb_t task_error_cb, uint32_t num_tasks) |
| This method sets the aes_gcm decrypt task configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_aes_gcm_task_decrypt_alloc_init (struct doca_aes_gcm *aes_gcm, struct doca_buf const *src_buff, struct doca_buf *dst_buff, struct doca_aes_gcm_key *key, const uint8_t *iv, uint32_t iv_length, uint32_t tag_size, uint32_t aad_size, union doca_data user_data, struct doca_aes_gcm_task_decrypt **task) |
| Allocate aes_gcm decrypt task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_aes_gcm_task_decrypt_as_task (struct doca_aes_gcm_task_decrypt *task) |
| convert aes_gcm decrypt task to doca_task More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_src (struct doca_aes_gcm_task_decrypt *task, struct doca_buf const *src_buff) |
| set aes_gcm decrypt task source More... | |
| DOCA_EXPERIMENTAL struct doca_buf const * | doca_aes_gcm_task_decrypt_get_src (const struct doca_aes_gcm_task_decrypt *task) |
| get aes_gcm decrypt task source More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_dst (struct doca_aes_gcm_task_decrypt *task, struct doca_buf *dst_buff) |
| set aes_gcm decrypt task destination More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_aes_gcm_task_decrypt_get_dst (const struct doca_aes_gcm_task_decrypt *task) |
| get aes_gcm decrypt task destination More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_key (struct doca_aes_gcm_task_decrypt *task, struct doca_aes_gcm_key *key) |
| set aes_gcm decrypt task doca_aes_gcm_key More... | |
| DOCA_EXPERIMENTAL struct doca_aes_gcm_key * | doca_aes_gcm_task_decrypt_get_key (const struct doca_aes_gcm_task_decrypt *task) |
| get aes_gcm decrypt task doca_aes_gcm_key More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_iv (struct doca_aes_gcm_task_decrypt *task, const uint8_t *iv, uint32_t iv_length) |
| set aes_gcm decrypt task initialization vector More... | |
| DOCA_EXPERIMENTAL const uint8_t * | doca_aes_gcm_task_decrypt_get_iv (const struct doca_aes_gcm_task_decrypt *task, uint32_t *iv_length) |
| get aes_gcm decrypt task initialization vector More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_tag_size (struct doca_aes_gcm_task_decrypt *task, uint32_t tag_size) |
| set aes_gcm decrypt task authentication tag size More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_aes_gcm_task_decrypt_get_tag_size (const struct doca_aes_gcm_task_decrypt *task) |
| get aes_gcm decrypt task authentication tag size More... | |
| DOCA_EXPERIMENTAL void | doca_aes_gcm_task_decrypt_set_aad_size (struct doca_aes_gcm_task_decrypt *task, uint32_t aad_size) |
| set aes_gcm decrypt task additional authenticated data size More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_aes_gcm_task_decrypt_get_aad_size (const struct doca_aes_gcm_task_decrypt *task) |
| get aes_gcm decrypt task additional authenticated data size More... | |
DOCA AES-GCM library. For more details please refer to the user guide on DOCA devzone.
| typedef void(* doca_aes_gcm_task_decrypt_completion_cb_t) (struct doca_aes_gcm_task_decrypt *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on aes_gcm decrypt task completion.
| [in] | task | aes_gcm decrypt task. The implementation can assume this value is not NULL. |
| [in] | task_user_data | task user data |
| [in] | ctx_user_data | doca_ctx user data |
Definition at line 560 of file doca_aes_gcm.h.
| typedef void(* doca_aes_gcm_task_encrypt_completion_cb_t) (struct doca_aes_gcm_task_encrypt *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on aes_gcm encrypt task completion.
| [in] | task | aes_gcm encrypt task. The implementation can assume this value is not NULL. |
| [in] | task_user_data | task user data |
| [in] | ctx_user_data | doca_ctx user data |
Definition at line 196 of file doca_aes_gcm.h.
AES-GCM key type.
| Enumerator | |
|---|---|
| DOCA_AES_GCM_KEY_128 | key size of 128 bit |
| DOCA_AES_GCM_KEY_256 | key size of 256 bit |
Definition at line 131 of file doca_aes_gcm.h.
| DOCA_EXPERIMENTAL struct doca_ctx* doca_aes_gcm_as_ctx | ( | struct doca_aes_gcm * | aes_gcm | ) |
Adapt doca_aes_gcm instance into a generalized context for use with doca core objects.
| [in] | aes_gcm | AES-GCM instance. This must remain valid until after the context is no longer required. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_get_max_num_tasks | ( | struct doca_aes_gcm * | aes_gcm, |
| uint32_t * | max_num_tasks | ||
| ) |
Get the maximum number of tasks
This method retrieves the maximum number of tasks for a device. Sum of num tasks should not exceed this number.
| [in] | aes_gcm | AES-GCM context to get max number of tasks from |
| [out] | max_num_tasks | Sum of num tasks should not exceed this number ( |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_get_max_buf_size | ( | const struct doca_devinfo * | devinfo, |
| uint64_t * | max_buffer_size | ||
| ) |
Get aes_gcm decrypt max buffer size.
This method retrieves aes_gcm decrypt max size
| [in] | devinfo | doca device info to check |
| [out] | max_buffer_size | The max buffer size for aes_gcm decrypt operation in bytes. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_get_max_iv_len | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_iv_len | ||
| ) |
Get aes_gcm decrypt maximum initialization vector length for a device
| [in] | devinfo | doca device info to check |
| [out] | max_iv_len | The max iv length in bytes. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_get_max_list_buf_num_elem | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_list_num_elem | ||
| ) |
Get the maximum supported number of elements in DOCA linked-list buffer for aes_gcm decrypt task.
| [in] | devinfo | The DOCA device information. |
| [out] | max_list_num_elem | The maximum supported number of elements in DOCA linked-list buffer. The value 1 indicates that only a single element is supported. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_is_key_type_supported | ( | const struct doca_devinfo * | devinfo, |
| enum doca_aes_gcm_key_type | key_type | ||
| ) |
Check if a given AES-GCM key type for decrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| [in] | key_type | key type to check. See enum doca_aes_gcm_key_type. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a aes_gcm decrypt task is supported by a device.
This method checks if a aes_gcm decrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_is_tag_128_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if authentication tag of size 128-bit for decrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_decrypt_is_tag_96_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if authentication tag of size 96-bit for decrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_get_max_buf_size | ( | const struct doca_devinfo * | devinfo, |
| uint64_t * | max_buffer_size | ||
| ) |
Get aes_gcm encrypt max buffer size.
This method retrieves a aes_gcm encrypt max size for a device
| [in] | devinfo | doca device info to check |
| [out] | max_buffer_size | The max buffer size for aes_gcm encrypt operation in bytes. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_get_max_iv_len | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_iv_len | ||
| ) |
Get aes_gcm encrypt maximum initialization vector length for a device
| [in] | devinfo | doca device info to check |
| [out] | max_iv_len | The max iv length in bytes. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_get_max_list_buf_num_elem | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_list_num_elem | ||
| ) |
Get the maximum supported number of elements in DOCA linked-list buffer for aes_gcm encrypt task.
| [in] | devinfo | The DOCA device information. |
| [out] | max_list_num_elem | The maximum supported number of elements in DOCA linked-list buffer. The value 1 indicates that only a single element is supported. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_is_key_type_supported | ( | const struct doca_devinfo * | devinfo, |
| enum doca_aes_gcm_key_type | key_type | ||
| ) |
Check if a given AES-GCM key type for encrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| [in] | key_type | key type to check. See enum doca_aes_gcm_key_type. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a aes_gcm encrypt task is supported by a device.
This method checks if a aes_gcm encrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_is_tag_128_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if authentication tag of size 128-bit for encrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_cap_task_encrypt_is_tag_96_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if authentication tag of size 96-bit for encrypt task is supported by a device
| [in] | devinfo | doca device info to check |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_create | ( | struct doca_dev * | dev, |
| struct doca_aes_gcm ** | aes_gcm | ||
| ) |
Create a DOCA AES-GCM instance.
| [in] | dev | The device to attach to the aes_gcm context |
| [out] | aes_gcm | Pointer to pointer to be set to point to the created doca_aes_gcm instance. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_destroy | ( | struct doca_aes_gcm * | aes_gcm | ) |
Destroy a DOCA AES-GCM instance.
| [in] | aes_gcm | Pointer to instance to be destroyed. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_key_create | ( | struct doca_aes_gcm * | aes_gcm, |
| const void * | raw_key, | ||
| enum doca_aes_gcm_key_type | raw_key_type, | ||
| struct doca_aes_gcm_key ** | key | ||
| ) |
Create an AES-GCM key from the user raw key to send with the task to allow encrypt/decrypt operations.
| [in] | aes_gcm | AES_GCM instance. |
| [in] | raw_key | The raw key given by the user, only 128bit or 256bit keys are supported |
| [in] | raw_key_type | The raw key type given by the user. See enum doca_aes_gcm_key_type. |
| [out] | key | Pointer to pointer to be set to point to the created AES-GCM key to allow encrypt/decrypt operations. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_key_destroy | ( | struct doca_aes_gcm_key * | key | ) |
Destroy AES-GCM key that was created in doca_aes_gcm_key_create.
| [in] | key | The AES-GCM key to allow encrypt/decrypt operations. |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_task_decrypt_alloc_init | ( | struct doca_aes_gcm * | aes_gcm, |
| struct doca_buf const * | src_buff, | ||
| struct doca_buf * | dst_buff, | ||
| struct doca_aes_gcm_key * | key, | ||
| const uint8_t * | iv, | ||
| uint32_t | iv_length, | ||
| uint32_t | tag_size, | ||
| uint32_t | aad_size, | ||
| union doca_data | user_data, | ||
| struct doca_aes_gcm_task_decrypt ** | task | ||
| ) |
Allocate aes_gcm decrypt task.
This method allocates and initializes a aes_gcm decrypt task. Task parameters can be set later on by setters.
| [in] | aes_gcm | The aes_gcm context to allocate the task from |
| [in] | src_buff | Source buffer |
| [in] | dst_buff | Destination buffer |
| [in] | key | DOCA AES-GCM key |
| [in] | iv | Initialization vector |
| [in] | iv_length | Initialization vector length in bytes, 0B-12B values are supported |
| [in] | tag_size | Authentication tag size in bytes, only 12B and 16B values are supported |
| [in] | aad_size | Additional authenticated data size in bytes |
| [in] | user_data | doca_data that can be retrieved from the task (usually when the task is completed). |
| [out] | task | The allocated task |
| DOCA_EXPERIMENTAL struct doca_task* doca_aes_gcm_task_decrypt_as_task | ( | struct doca_aes_gcm_task_decrypt * | task | ) |
convert aes_gcm decrypt task to doca_task
| [in] | task | The task to convert |
| DOCA_EXPERIMENTAL uint32_t doca_aes_gcm_task_decrypt_get_aad_size | ( | const struct doca_aes_gcm_task_decrypt * | task | ) |
get aes_gcm decrypt task additional authenticated data size
| [in] | task | Task to get the additional authenticated data size from |
| DOCA_EXPERIMENTAL struct doca_buf* doca_aes_gcm_task_decrypt_get_dst | ( | const struct doca_aes_gcm_task_decrypt * | task | ) |
get aes_gcm decrypt task destination
| [in] | task | Task to get the destination from |
| DOCA_EXPERIMENTAL const uint8_t* doca_aes_gcm_task_decrypt_get_iv | ( | const struct doca_aes_gcm_task_decrypt * | task, |
| uint32_t * | iv_length | ||
| ) |
get aes_gcm decrypt task initialization vector
| [in] | task | Task to get the initialization vector from |
| [out] | iv_length | Initialization vector length in bytes |
| DOCA_EXPERIMENTAL struct doca_aes_gcm_key* doca_aes_gcm_task_decrypt_get_key | ( | const struct doca_aes_gcm_task_decrypt * | task | ) |
get aes_gcm decrypt task doca_aes_gcm_key
| [in] | task | Task to get the doca_aes_gcm_key from |
| DOCA_EXPERIMENTAL struct doca_buf const* doca_aes_gcm_task_decrypt_get_src | ( | const struct doca_aes_gcm_task_decrypt * | task | ) |
get aes_gcm decrypt task source
| [in] | task | Task to get the source from |
| DOCA_EXPERIMENTAL uint32_t doca_aes_gcm_task_decrypt_get_tag_size | ( | const struct doca_aes_gcm_task_decrypt * | task | ) |
get aes_gcm decrypt task authentication tag size
| [in] | task | Task to get the authentication tag size from |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_aad_size | ( | struct doca_aes_gcm_task_decrypt * | task, |
| uint32_t | aad_size | ||
| ) |
set aes_gcm decrypt task additional authenticated data size
| [in] | task | Task to set the additional authenticated data size to |
| [in] | aad_size | Additional authenticated data size in bytes |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_task_decrypt_set_conf | ( | struct doca_aes_gcm * | aes_gcm, |
| doca_aes_gcm_task_decrypt_completion_cb_t | task_completion_cb, | ||
| doca_aes_gcm_task_decrypt_completion_cb_t | task_error_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the aes_gcm decrypt task configuration.
| [in] | aes_gcm | The aes_gcm context to config |
| [in] | task_completion_cb | Task completion callback |
| [in] | task_error_cb | Task error callback |
| [in] | num_tasks | Number of aes_gcm decrypt tasks that the context can allocate |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_dst | ( | struct doca_aes_gcm_task_decrypt * | task, |
| struct doca_buf * | dst_buff | ||
| ) |
set aes_gcm decrypt task destination
| [in] | task | Task to set the destination to |
| [in] | dst_buff | destination buffer to set |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_iv | ( | struct doca_aes_gcm_task_decrypt * | task, |
| const uint8_t * | iv, | ||
| uint32_t | iv_length | ||
| ) |
set aes_gcm decrypt task initialization vector
| [in] | task | Task to set the initialization vector to |
| [in] | iv | Initialization vector |
| [in] | iv_length | Initialization vector length in bytes |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_key | ( | struct doca_aes_gcm_task_decrypt * | task, |
| struct doca_aes_gcm_key * | key | ||
| ) |
set aes_gcm decrypt task doca_aes_gcm_key
| [in] | task | Task to set the doca_aes_gcm_key to |
| [in] | key | DOCA AES-GCM key |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_src | ( | struct doca_aes_gcm_task_decrypt * | task, |
| struct doca_buf const * | src_buff | ||
| ) |
set aes_gcm decrypt task source
| [in] | task | Task to set the source to |
| [in] | src_buff | Source buffer to set |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_decrypt_set_tag_size | ( | struct doca_aes_gcm_task_decrypt * | task, |
| uint32_t | tag_size | ||
| ) |
set aes_gcm decrypt task authentication tag size
| [in] | task | Task to set the authentication tag size to |
| [in] | tag_size | Authentication tag size in bytes |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_task_encrypt_alloc_init | ( | struct doca_aes_gcm * | aes_gcm, |
| struct doca_buf const * | src_buff, | ||
| struct doca_buf * | dst_buff, | ||
| struct doca_aes_gcm_key * | key, | ||
| const uint8_t * | iv, | ||
| uint32_t | iv_length, | ||
| uint32_t | tag_size, | ||
| uint32_t | aad_size, | ||
| union doca_data | user_data, | ||
| struct doca_aes_gcm_task_encrypt ** | task | ||
| ) |
Allocate aes_gcm encrypt task.
This method allocates and initializes a aes_gcm encrypt task. Task parameters can be set later on by setters.
| [in] | aes_gcm | The aes_gcm context to allocate the task from |
| [in] | src_buff | Source buffer |
| [in] | dst_buff | Destination buffer |
| [in] | key | DOCA AES-GCM key |
| [in] | iv | Initialization vector |
| [in] | iv_length | Initialization vector length in bytes, 0B-12B values are supported |
| [in] | tag_size | Authentication tag size in bytes, only 12B and 16B values are supported |
| [in] | aad_size | Additional authenticated data size in bytes |
| [in] | user_data | doca_data that can be retrieved from the task (usually when the task is completed). |
| [out] | task | The allocated task |
| DOCA_EXPERIMENTAL struct doca_task* doca_aes_gcm_task_encrypt_as_task | ( | struct doca_aes_gcm_task_encrypt * | task | ) |
convert aes_gcm encrypt task to doca_task
| [in] | task | The task to convert |
| DOCA_EXPERIMENTAL uint32_t doca_aes_gcm_task_encrypt_get_aad_size | ( | const struct doca_aes_gcm_task_encrypt * | task | ) |
get aes_gcm encrypt task additional authenticated data size
| [in] | task | Task to get the additional authenticated data size from |
| DOCA_EXPERIMENTAL struct doca_buf* doca_aes_gcm_task_encrypt_get_dst | ( | const struct doca_aes_gcm_task_encrypt * | task | ) |
get aes_gcm encrypt task destination
| [in] | task | Task to get the destination from |
| DOCA_EXPERIMENTAL const uint8_t* doca_aes_gcm_task_encrypt_get_iv | ( | const struct doca_aes_gcm_task_encrypt * | task, |
| uint32_t * | iv_length | ||
| ) |
get aes_gcm encrypt task initialization vector
| [in] | task | Task to get the initialization vector from |
| [out] | iv_length | Initialization vector length in bytes |
| DOCA_EXPERIMENTAL struct doca_aes_gcm_key* doca_aes_gcm_task_encrypt_get_key | ( | const struct doca_aes_gcm_task_encrypt * | task | ) |
get aes_gcm encrypt task doca_aes_gcm_key
| [in] | task | Task to get the doca_aes_gcm_key from |
| DOCA_EXPERIMENTAL struct doca_buf const* doca_aes_gcm_task_encrypt_get_src | ( | const struct doca_aes_gcm_task_encrypt * | task | ) |
get aes_gcm encrypt task source
| [in] | task | Task to get the source from |
| DOCA_EXPERIMENTAL uint32_t doca_aes_gcm_task_encrypt_get_tag_size | ( | const struct doca_aes_gcm_task_encrypt * | task | ) |
get aes_gcm encrypt task authentication tag size
| [in] | task | Task to get the authentication tag size from |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_aad_size | ( | struct doca_aes_gcm_task_encrypt * | task, |
| uint32_t | aad_size | ||
| ) |
set aes_gcm encrypt task additional authenticated data size
| [in] | task | Task to set the additional authenticated data size to |
| [in] | aad_size | Additional authenticated data size in bytes |
| DOCA_EXPERIMENTAL doca_error_t doca_aes_gcm_task_encrypt_set_conf | ( | struct doca_aes_gcm * | aes_gcm, |
| doca_aes_gcm_task_encrypt_completion_cb_t | task_completion_cb, | ||
| doca_aes_gcm_task_encrypt_completion_cb_t | task_error_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the aes_gcm encrypt task configuration.
| [in] | aes_gcm | The aes_gcm context to config |
| [in] | task_completion_cb | Task completion callback |
| [in] | task_error_cb | Task error callback |
| [in] | num_tasks | Number of aes_gcm encrypt tasks that the context can allocate |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_dst | ( | struct doca_aes_gcm_task_encrypt * | task, |
| struct doca_buf * | dst_buff | ||
| ) |
set aes_gcm encrypt task destination
| [in] | task | Task to set the destination to |
| [in] | dst_buff | destination buffer to set |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_iv | ( | struct doca_aes_gcm_task_encrypt * | task, |
| const uint8_t * | iv, | ||
| uint32_t | iv_length | ||
| ) |
set aes_gcm encrypt task initialization vector
| [in] | task | Task to set the initialization vector to |
| [in] | iv | Initialization vector |
| [in] | iv_length | Initialization vector length in bytes |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_key | ( | struct doca_aes_gcm_task_encrypt * | task, |
| struct doca_aes_gcm_key * | key | ||
| ) |
set aes_gcm encrypt task doca_aes_gcm_key
| [in] | task | Task to set the doca_aes_gcm_key to |
| [in] | key | DOCA AES-GCM key |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_src | ( | struct doca_aes_gcm_task_encrypt * | task, |
| struct doca_buf const * | src_buff | ||
| ) |
set aes_gcm encrypt task source
| [in] | task | Task to set the source to |
| [in] | src_buff | Source buffer to set |
| DOCA_EXPERIMENTAL void doca_aes_gcm_task_encrypt_set_tag_size | ( | struct doca_aes_gcm_task_encrypt * | task, |
| uint32_t | tag_size | ||
| ) |
set aes_gcm encrypt task authentication tag size
| [in] | task | Task to set the authentication tag size to |
| [in] | tag_size | Authentication tag size in bytes |