8 #include <botan/compression.h>
9 #include <botan/mem_ops.h>
10 #include <botan/exceptn.h>
13 #if defined(BOTAN_HAS_ZLIB)
14 #include <botan/zlib.h>
17 #if defined(BOTAN_HAS_BZIP2)
18 #include <botan/bzip2.h>
21 #if defined(BOTAN_HAS_LZMA)
22 #include <botan/lzma.h>
29 #if defined(BOTAN_HAS_ZLIB)
30 if(name ==
"Zlib" || name ==
"zlib")
32 if(name ==
"Gzip" || name ==
"gzip" || name ==
"gz")
34 if(name ==
"Deflate" || name ==
"deflate")
38 #if defined(BOTAN_HAS_BZIP2)
39 if(name ==
"bzip2" || name ==
"bz2" || name ==
"Bzip2")
43 #if defined(BOTAN_HAS_LZMA)
44 if(name ==
"lzma" || name ==
"xz" || name ==
"LZMA")
53 std::unique_ptr<Compression_Algorithm>
56 std::unique_ptr<Compression_Algorithm> compressor(
make_compressor(algo));
61 std::unique_ptr<Compression_Algorithm>
73 #if defined(BOTAN_HAS_ZLIB)
74 if(name ==
"Zlib" || name ==
"zlib")
76 if(name ==
"Gzip" || name ==
"gzip" || name ==
"gz")
78 if(name ==
"Deflate" || name ==
"deflate")
82 #if defined(BOTAN_HAS_BZIP2)
83 if(name ==
"bzip2" || name ==
"bz2" || name ==
"Bzip2")
87 #if defined(BOTAN_HAS_LZMA)
88 if(name ==
"lzma" || name ==
"xz" || name ==
"LZMA")
97 std::unique_ptr<Decompression_Algorithm>
105 std::unique_ptr<Decompression_Algorithm>
static std::unique_ptr< Compression_Algorithm > create(const std::string &algo_spec)
Decompression_Algorithm * make_decompressor(const std::string &name)
Compression_Algorithm * make_compressor(const std::string &name)
static std::unique_ptr< Decompression_Algorithm > create_or_throw(const std::string &algo_spec)
#define BOTAN_UNUSED(...)
static std::unique_ptr< Decompression_Algorithm > create(const std::string &algo_spec)
static std::unique_ptr< Compression_Algorithm > create_or_throw(const std::string &algo_spec)