11#include <botan/frodo_mode.h>
13#include <botan/assert.h>
14#include <botan/internal/fmt.h>
15#include <botan/internal/loadstor.h>
26 if(str ==
"FrodoKEM-640-SHAKE") {
29 if(str ==
"FrodoKEM-976-SHAKE") {
32 if(str ==
"FrodoKEM-1344-SHAKE") {
35 if(str ==
"eFrodoKEM-640-SHAKE") {
38 if(str ==
"eFrodoKEM-976-SHAKE") {
41 if(str ==
"eFrodoKEM-1344-SHAKE") {
45 if(str ==
"FrodoKEM-640-AES") {
48 if(str ==
"FrodoKEM-976-AES") {
51 if(str ==
"FrodoKEM-1344-AES") {
54 if(str ==
"eFrodoKEM-640-AES") {
57 if(str ==
"eFrodoKEM-976-AES") {
60 if(str ==
"eFrodoKEM-1344-AES") {
64 throw Invalid_Argument(
fmt(
"'{}' is not a valid FrodoKEM mode name", str));
82 return "FrodoKEM-640-SHAKE";
84 return "FrodoKEM-976-SHAKE";
86 return "FrodoKEM-1344-SHAKE";
88 return "eFrodoKEM-640-SHAKE";
90 return "eFrodoKEM-976-SHAKE";
92 return "eFrodoKEM-1344-SHAKE";
95 return "FrodoKEM-640-AES";
97 return "FrodoKEM-976-AES";
99 return "FrodoKEM-1344-AES";
101 return "eFrodoKEM-640-AES";
103 return "eFrodoKEM-976-AES";
105 return "eFrodoKEM-1344-AES";
#define BOTAN_ASSERT_UNREACHABLE()
std::string to_string() const
OID object_identifier() const
static OID from_string(std::string_view str)
std::string fmt(std::string_view format, const T &... args)