diff options
Diffstat (limited to 'Source/charon/transforms/signers/signer.c')
-rw-r--r-- | Source/charon/transforms/signers/signer.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Source/charon/transforms/signers/signer.c b/Source/charon/transforms/signers/signer.c index 3ecf58069..98c639f6c 100644 --- a/Source/charon/transforms/signers/signer.c +++ b/Source/charon/transforms/signers/signer.c @@ -22,6 +22,7 @@ #include "signer.h" +#include <transforms/signers/hmac_signer.h> /** * string mappings for integrity_algorithm_t @@ -35,3 +36,21 @@ mapping_t integrity_algorithm_m[] = { {AUTH_AES_XCBC_96, "AUTH_AES_XCBC_96"}, {MAPPING_END, NULL} }; + +signer_t *signer_create(integrity_algorithm_t integrity_algorithm) +{ + switch(integrity_algorithm) + { + case AUTH_HMAC_SHA1_96: + { + return ((signer_t *) hmac_signer_create(HASH_SHA1)); + } + case AUTH_HMAC_MD5_96: + { + return ((signer_t *) hmac_signer_create(HASH_MD5)); + } + + default: + return NULL; + } +} |