hasher: Add filter function for algorithms permitted by RFC 7427

This commit is contained in:
Tobias Brunner
2015-03-04 13:54:08 +01:00
parent 4f9e1c49eb
commit 247eadb73d
2 changed files with 30 additions and 0 deletions
+22
View File
@@ -248,6 +248,28 @@ integrity_algorithm_t hasher_algorithm_to_integrity(hash_algorithm_t alg,
return AUTH_UNDEFINED;
}
/*
* Described in header.
*/
bool hasher_algorithm_for_ikev2(hash_algorithm_t alg)
{
switch (alg)
{
case HASH_SHA1:
case HASH_SHA256:
case HASH_SHA384:
case HASH_SHA512:
return TRUE;
case HASH_UNKNOWN:
case HASH_MD2:
case HASH_MD4:
case HASH_MD5:
case HASH_SHA224:
break;
}
return FALSE;
}
/*
* Described in header.
*/
@@ -162,6 +162,14 @@ hash_algorithm_t hasher_algorithm_from_integrity(integrity_algorithm_t alg,
integrity_algorithm_t hasher_algorithm_to_integrity(hash_algorithm_t alg,
size_t length);
/**
* Check if the given algorithm may be used for IKEv2 signature authentication.
*
* @param alg hash algorithm
* @return TRUE if algorithm may be used, FALSE otherwise
*/
bool hasher_algorithm_for_ikev2(hash_algorithm_t alg);
/**
* Conversion of hash algorithm into ASN.1 OID.
*