93#if defined(BOTAN_HAS_COMMONCRYPTO) 
  111#if defined(BOTAN_HAS_AES) 
  112   if(algo == 
"AES-128") {
 
  113      return std::make_unique<AES_128>();
 
  116   if(algo == 
"AES-192") {
 
  117      return std::make_unique<AES_192>();
 
  120   if(algo == 
"AES-256") {
 
  121      return std::make_unique<AES_256>();
 
  125#if defined(BOTAN_HAS_ARIA) 
  126   if(algo == 
"ARIA-128") {
 
  127      return std::make_unique<ARIA_128>();
 
  130   if(algo == 
"ARIA-192") {
 
  131      return std::make_unique<ARIA_192>();
 
  134   if(algo == 
"ARIA-256") {
 
  135      return std::make_unique<ARIA_256>();
 
  139#if defined(BOTAN_HAS_SERPENT) 
  140   if(algo == 
"Serpent") {
 
  141      return std::make_unique<Serpent>();
 
  145#if defined(BOTAN_HAS_SHACAL2) 
  146   if(algo == 
"SHACAL2") {
 
  147      return std::make_unique<SHACAL2>();
 
  151#if defined(BOTAN_HAS_TWOFISH) 
  152   if(algo == 
"Twofish") {
 
  153      return std::make_unique<Twofish>();
 
  157#if defined(BOTAN_HAS_THREEFISH_512) 
  158   if(algo == 
"Threefish-512") {
 
  159      return std::make_unique<Threefish_512>();
 
  163#if defined(BOTAN_HAS_BLOWFISH) 
  164   if(algo == 
"Blowfish") {
 
  165      return std::make_unique<Blowfish>();
 
  169#if defined(BOTAN_HAS_CAMELLIA) 
  170   if(algo == 
"Camellia-128") {
 
  171      return std::make_unique<Camellia_128>();
 
  174   if(algo == 
"Camellia-192") {
 
  175      return std::make_unique<Camellia_192>();
 
  178   if(algo == 
"Camellia-256") {
 
  179      return std::make_unique<Camellia_256>();
 
  183#if defined(BOTAN_HAS_DES) 
  185      return std::make_unique<DES>();
 
  188   if(algo == 
"TripleDES" || algo == 
"3DES" || algo == 
"DES-EDE") {
 
  189      return std::make_unique<TripleDES>();
 
  193#if defined(BOTAN_HAS_NOEKEON) 
  194   if(algo == 
"Noekeon") {
 
  195      return std::make_unique<Noekeon>();
 
  199#if defined(BOTAN_HAS_CAST_128) 
  200   if(algo == 
"CAST-128" || algo == 
"CAST5") {
 
  201      return std::make_unique<CAST_128>();
 
  205#if defined(BOTAN_HAS_IDEA) 
  207      return std::make_unique<IDEA>();
 
  211#if defined(BOTAN_HAS_KUZNYECHIK) 
  212   if(algo == 
"Kuznyechik") {
 
  213      return std::make_unique<Kuznyechik>();
 
  217#if defined(BOTAN_HAS_SEED) 
  219      return std::make_unique<SEED>();
 
  223#if defined(BOTAN_HAS_SM4) 
  225      return std::make_unique<SM4>();
 
  231#if defined(BOTAN_HAS_GOST_28147_89) 
  233      return std::make_unique<GOST_28147_89>(req.
arg(0, 
"R3411_94_TestParam"));
 
  237#if defined(BOTAN_HAS_CASCADE) 
  243         return std::make_unique<Cascade_Cipher>(std::move(c1), std::move(c2));
 
  248#if defined(BOTAN_HAS_LION) 
  255         return std::make_unique<Lion>(std::move(hash), std::move(stream), 
block_size);