Make function to test if an encryption algorithm is an AEAD alg public

This commit is contained in:
Martin Willi
2010-08-19 19:02:16 +02:00
parent df8d0d8703
commit 7fc4b0814f
3 changed files with 32 additions and 25 deletions
+22 -1
View File
@@ -159,4 +159,25 @@ int encryption_algorithm_to_oid(encryption_algorithm_t alg, size_t key_size)
return oid;
}
/*
* Described in header.
*/
bool encryption_algorithm_is_aead(encryption_algorithm_t alg)
{
switch (alg)
{
case ENCR_AES_CCM_ICV8:
case ENCR_AES_CCM_ICV12:
case ENCR_AES_CCM_ICV16:
case ENCR_AES_GCM_ICV8:
case ENCR_AES_GCM_ICV12:
case ENCR_AES_GCM_ICV16:
case ENCR_NULL_AUTH_AES_GMAC:
case ENCR_CAMELLIA_CCM_ICV8:
case ENCR_CAMELLIA_CCM_ICV12:
case ENCR_CAMELLIA_CCM_ICV16:
return TRUE;
default:
return FALSE;
}
}
@@ -170,4 +170,12 @@ encryption_algorithm_t encryption_algorithm_from_oid(int oid, size_t *key_size);
*/
int encryption_algorithm_to_oid(encryption_algorithm_t alg, size_t key_size);
/**
* Check if an encryption algorithm identifier is an AEAD algorithm.
*
* @param alg algorithm identifier
* @return TRUE if it is an AEAD algorithm
*/
bool encryption_algorithm_is_aead(encryption_algorithm_t alg);
#endif /** CRYPTER_H_ @}*/