aboutsummaryrefslogtreecommitdiffstats
path: root/src/modes/aead/aead.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modes/aead/aead.cpp')
-rw-r--r--src/modes/aead/aead.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/modes/aead/aead.cpp b/src/modes/aead/aead.cpp
index 980a212d4..d913c7c3a 100644
--- a/src/modes/aead/aead.cpp
+++ b/src/modes/aead/aead.cpp
@@ -51,9 +51,18 @@ AEAD_Mode* get_aead(const std::string& algo_spec, Cipher_Dir direction)
return nullptr;
#if defined(BOTAN_HAS_AEAD_CCM)
+ if(mode_name == "CCM-8")
+ {
+ if(direction == ENCRYPTION)
+ return new CCM_Encryption(cipher->clone(), 8, 3);
+ else
+ return new CCM_Decryption(cipher->clone(), 8, 3);
+ }
+
if(mode_name == "CCM")
{
const size_t L = (mode_info.size() > 2) ? to_u32bit(mode_info[2]) : 3;
+
if(direction == ENCRYPTION)
return new CCM_Encryption(cipher->clone(), tag_size, L);
else