NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
doca_sha.h File Reference
#include <inttypes.h>
#include <doca_compat.h>
#include <doca_error.h>
#include <doca_types.h>
Include dependency graph for doca_sha.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef void(* doca_sha_task_hash_completion_cb_t) (struct doca_sha_task_hash *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
typedef void(* doca_sha_task_partial_hash_completion_cb_t) (struct doca_sha_task_partial_hash *task, union doca_data task_user_data, union doca_data ctx_user_data)
 

Enumerations

enum  doca_sha_algorithm { DOCA_SHA_ALGORITHM_SHA1 , DOCA_SHA_ALGORITHM_SHA256 , DOCA_SHA_ALGORITHM_SHA512 }
 

Functions

DOCA_EXPERIMENTAL doca_error_t doca_sha_create (struct doca_dev *dev, struct doca_sha **sha)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_destroy (struct doca_sha *sha)
 
DOCA_EXPERIMENTAL struct doca_ctx * doca_sha_as_ctx (struct doca_sha *sha)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_task_hash_get_supported (struct doca_devinfo const *devinfo, enum doca_sha_algorithm algorithm)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_task_partial_hash_get_supported (struct doca_devinfo const *devinfo, enum doca_sha_algorithm algorithm)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_get_max_list_buf_num_elem (struct doca_devinfo const *devinfo, uint32_t *max_list_buf_num_elem)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_get_max_src_buf_size (struct doca_devinfo const *devinfo, uint64_t *max_src_buf_size)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_get_min_dst_buf_size (struct doca_devinfo const *devinfo, enum doca_sha_algorithm algorithm, uint32_t *min_dst_buf_size)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_get_partial_hash_block_size (struct doca_devinfo const *devinfo, enum doca_sha_algorithm algorithm, uint32_t *partial_block_size)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_cap_get_max_num_tasks (struct doca_sha *sha, uint32_t *max_num_tasks)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_hash_set_conf (struct doca_sha *sha, doca_sha_task_hash_completion_cb_t task_completion_cb, doca_sha_task_hash_completion_cb_t task_error_cb, uint8_t log_num_tasks)
 This method sets the doca_sha hash task pool configuration. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_hash_alloc_init (struct doca_sha *sha, enum doca_sha_algorithm algorithm, struct doca_buf const *src_buf, struct doca_buf *dst_buf, union doca_data user_data, struct doca_sha_task_hash **task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_hash_set_src (struct doca_sha_task_hash *task, struct doca_buf const *src_buf)
 
DOCA_EXPERIMENTAL struct doca_buf const * doca_sha_task_hash_get_src (struct doca_sha_task_hash const *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_hash_set_dst (struct doca_sha_task_hash *task, struct doca_buf *dst_buf)
 
DOCA_EXPERIMENTAL struct doca_buf const * doca_sha_task_hash_get_dst (struct doca_sha_task_hash const *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_hash_set_algorithm (struct doca_sha_task_hash *task, enum doca_sha_algorithm algorithm)
 
DOCA_EXPERIMENTAL enum doca_sha_algorithm doca_sha_task_hash_get_algorithm (struct doca_sha_task_hash const *task)
 
DOCA_EXPERIMENTAL struct doca_task * doca_sha_task_hash_as_task (struct doca_sha_task_hash *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_set_conf (struct doca_sha *sha, doca_sha_task_partial_hash_completion_cb_t task_completion_cb, doca_sha_task_partial_hash_completion_cb_t task_error_cb, uint8_t log_num_tasks)
 This method sets the doca_sha partial hash task pool configuration. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_alloc_init (struct doca_sha *sha, enum doca_sha_algorithm algorithm, struct doca_buf const *src_buf, struct doca_buf *dst_buf, union doca_data user_data, struct doca_sha_task_partial_hash **task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_reset (struct doca_sha_task_partial_hash *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_set_src (struct doca_sha_task_partial_hash *task, struct doca_buf const *src_buf)
 
DOCA_EXPERIMENTAL struct doca_buf const * doca_sha_task_partial_hash_get_src (struct doca_sha_task_partial_hash const *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_set_dst (struct doca_sha_task_partial_hash *task, struct doca_buf *dst_buf)
 
DOCA_EXPERIMENTAL struct doca_buf const * doca_sha_task_partial_hash_get_dst (struct doca_sha_task_partial_hash const *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_set_algorithm (struct doca_sha_task_partial_hash *task, enum doca_sha_algorithm algorithm)
 
DOCA_EXPERIMENTAL enum doca_sha_algorithm doca_sha_task_partial_hash_get_algorithm (struct doca_sha_task_partial_hash const *task)
 
DOCA_EXPERIMENTAL doca_error_t doca_sha_task_partial_hash_set_is_final_buf (struct doca_sha_task_partial_hash *task)
 
DOCA_EXPERIMENTAL uint8_t doca_sha_task_partial_hash_get_is_final (struct doca_sha_task_partial_hash const *task)
 
DOCA_EXPERIMENTAL uint8_t doca_sha_task_partial_hash_get_has_result (struct doca_sha_task_partial_hash const *task)
 
DOCA_EXPERIMENTAL struct doca_task * doca_sha_task_partial_hash_as_task (struct doca_sha_task_partial_hash *task)