transform: Add a getter for the enum_names for a specific transform type
This commit is contained in:
@@ -14,6 +14,8 @@
|
||||
*/
|
||||
|
||||
#include <crypto/transform.h>
|
||||
#include <crypto/hashers/hasher.h>
|
||||
#include <crypto/rngs/rng.h>
|
||||
|
||||
ENUM_BEGIN(transform_type_names, UNDEFINED_TRANSFORM_TYPE, COMPRESSION_ALGORITHM,
|
||||
"UNDEFINED_TRANSFORM_TYPE",
|
||||
@@ -34,3 +36,33 @@ ENUM(extended_sequence_numbers_names, NO_EXT_SEQ_NUMBERS, EXT_SEQ_NUMBERS,
|
||||
"NO_EXT_SEQ",
|
||||
"EXT_SEQ",
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* See header
|
||||
*/
|
||||
enum_name_t* transform_get_enum_names(transform_type_t type)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case HASH_ALGORITHM:
|
||||
return hash_algorithm_names;
|
||||
case RANDOM_NUMBER_GENERATOR:
|
||||
return rng_quality_names;
|
||||
case AEAD_ALGORITHM:
|
||||
case ENCRYPTION_ALGORITHM:
|
||||
return encryption_algorithm_names;
|
||||
case PSEUDO_RANDOM_FUNCTION:
|
||||
return pseudo_random_function_names;
|
||||
case INTEGRITY_ALGORITHM:
|
||||
return integrity_algorithm_names;
|
||||
case DIFFIE_HELLMAN_GROUP:
|
||||
return diffie_hellman_group_names;
|
||||
case EXTENDED_SEQUENCE_NUMBERS:
|
||||
return extended_sequence_numbers_names;
|
||||
case UNDEFINED_TRANSFORM_TYPE:
|
||||
case COMPRESSION_ALGORITHM:
|
||||
break;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -46,6 +46,14 @@ enum transform_type_t {
|
||||
*/
|
||||
extern enum_name_t *transform_type_names;
|
||||
|
||||
/**
|
||||
* Get the enum names for a specific transform type.
|
||||
*
|
||||
* @param type type of transform to get enum names for
|
||||
* @return enum names
|
||||
*/
|
||||
enum_name_t *transform_get_enum_names(transform_type_t type);
|
||||
|
||||
/**
|
||||
* Extended sequence numbers, as in IKEv2 RFC 3.3.2.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user