379 #ifndef ti_drivers_AESCTR__include 380 #define ti_drivers_AESCTR__include 404 #define AESCTR_STATUS_RESERVED AES_STATUS_RESERVED 412 #define AESCTR_STATUS_SUCCESS AES_STATUS_SUCCESS 420 #define AESCTR_STATUS_ERROR AES_STATUS_ERROR 430 #define AESCTR_STATUS_RESOURCE_UNAVAILABLE AES_STATUS_RESOURCE_UNAVAILABLE 435 #define AESCTR_STATUS_CANCELED AES_STATUS_CANCELED 440 #define AESCTR_STATUS_FEATURE_NOT_SUPPORTED AES_STATUS_FEATURE_NOT_SUPPORTED 445 #define AESCTR_STATUS_KEYSTORE_INVALID_ID AES_STATUS_KEYSTORE_INVALID_ID 451 #define AESCTR_STATUS_KEYSTORE_GENERIC_ERROR AES_STATUS_KEYSTORE_GENERIC_ERROR 459 #define AESCTR_STATUS_UNALIGNED_IO_NOT_SUPPORTED AES_STATUS_UNALIGNED_IO_NOT_SUPPORTED 603 #define AESCTR_OP_MODE_MASK 0x0F 608 #define AESCTR_OP_FLAG_SEGMENTED 0x10 613 #define AESCTR_OP_FLAG_FINALIZE 0x20 618 #define AESCTR_OP_FLAGS_MASK (AESCTR_OP_FLAG_SEGMENTED | AESCTR_OP_FLAG_FINALIZE) 667 int_fast16_t returnValue,
void AESCTR_SegmentedOperation_init(AESCTR_SegmentedOperation *operation)
Function to initialize an AESCTR_SegmentedOperation struct to its defaults (all zeroes) ...
const AESCTR_Params AESCTR_defaultParams
Default AESCTR_Params structure.
ADC_Params params
Definition: Driver_Init.h:11
The CryptoKey type is an opaque representation of a cryptographic key.
AESCTR_Config * AESCTR_Handle
A handle that is returned from an AESCTR_open() call.
Definition: AESCTR.h:649
AESCommon_Config AESCTR_Config
AESCTR Global configuration.
Definition: AESCTR.h:644
int_fast16_t AESCTR_oneStepDecrypt(AESCTR_Handle handle, AESCTR_OneStepOperation *operation)
Function to perform an AESCTR decryption operation in one call.
void AESCTR_init(void)
This function initializes the CTR module.
const CryptoKey * key
Definition: AESCTR.h:512
int_fast16_t AESCTR_setupEncrypt(AESCTR_Handle handle, const CryptoKey *key, const uint8_t *initialCounter)
Function to prepare a segmented AESCTR encryption operation.
void AESCTR_OneStepOperation_init(AESCTR_OneStepOperation *operation)
Function to initialize an AESCTR_OneStepOperation struct to its defaults (all zeroes) ...
void(* AESCTR_CallbackFxn)(AESCTR_Handle handle, int_fast16_t returnValue, AESCTR_OperationUnion *operation, AESCTR_OperationType operationType)
The definition of a callback function used by the AESCTR driver when used in AESCTR_RETURN_BEHAVIOR_C...
Definition: AESCTR.h:666
CTR Parameters.
Definition: AESCTR.h:679
Struct containing the parameters required for encrypting/decrypting a message using a one-step operat...
Definition: AESCTR.h:510
AES Global configuration.
Definition: AESCommon.h:154
const uint8_t * input
Definition: AESCTR.h:513
AESCTR_OperationType
Enum for the operation types supported by the driver.
Definition: AESCTR.h:623
CryptoKey datastructure.
Definition: CryptoKey.h:196
AESCTR_ReturnBehavior
The way in which CTR function calls return after performing an encryption or decryption operation...
Definition: AESCTR.h:482
Definition: AESCommon.h:186
Definition: AESCommon.h:196
AESCTR_Mode
Enum for the direction of the CTR operation.
Definition: AESCTR.h:594
#define AESCTR_OP_FLAG_SEGMENTED
Flag indicating a segmented operation.
Definition: AESCTR.h:608
AESCTR_OneStepOperation oneStepOperation
Definition: AESCTR.h:587
void AESCTR_Params_init(AESCTR_Params *params)
Function to initialize the AESCTR_Params struct to its defaults.
Definition: AESCommon.h:192
uint8_t * output
Definition: AESCTR.h:518
size_t inputLength
Definition: AESCTR.h:564
Struct containing the parameters required for encrypting/decrypting a message using a segmented opera...
Definition: AESCTR.h:549
AESCTR_CallbackFxn callbackFxn
Definition: AESCTR.h:682
void * custom
Definition: AESCTR.h:686
AESCTR_SegmentedOperation segmentedOperation
Definition: AESCTR.h:588
int_fast16_t AESCTR_addData(AESCTR_Handle handle, AESCTR_SegmentedOperation *operation)
Encrypts or decrypts a segment of data with a length.
int_fast16_t AESCTR_cancelOperation(AESCTR_Handle handle)
Cancels an ongoing AESCTR operation.
AESCTR_ReturnBehavior returnBehavior
Definition: AESCTR.h:681
AESCTR_Handle AESCTR_open(uint_least8_t index, const AESCTR_Params *params)
This function opens a given AESCTR peripheral.
size_t inputLength
Definition: AESCTR.h:533
const uint8_t * input
Definition: AESCTR.h:551
uint8_t * output
Definition: AESCTR.h:556
#define AESCTR_OP_FLAG_FINALIZE
Flag indicating a finalize operation.
Definition: AESCTR.h:613
int_fast16_t AESCTR_finalize(AESCTR_Handle handle, AESCTR_SegmentedOperation *operation)
Finalize the AES operation. If new data needs to be added, inputLength will be used to govern how man...
void AESCTR_Operation_init(AESCTR_Operation *operation)
Function to initialize an AESCTR_Operation struct to its defaults (all zeroes)
int_fast16_t AESCTR_oneStepEncrypt(AESCTR_Handle handle, AESCTR_OneStepOperation *operation)
Function to perform an AESCTR encryption operation in one call.
AES common module header for all devices.
Union containing a reference to a one-step and segmented operation structure.
Definition: AESCTR.h:585
uint32_t timeout
Definition: AESCTR.h:683
AESCTR_Handle AESCTR_construct(AESCTR_Config *config, const AESCTR_Params *params)
Constructs a new AESCTR object.
const uint8_t * initialCounter
Definition: AESCTR.h:526
AESCTR_OneStepOperation AESCTR_Operation
Definition: AESCTR.h:579
int_fast16_t AESCTR_setupDecrypt(AESCTR_Handle handle, const CryptoKey *key, const uint8_t *initialCounter)
Function to prepare a segmented AESCTR decryption operation.
void AESCTR_close(AESCTR_Handle handle)
Function to close a CTR peripheral specified by the AESCTR handle.