diff options
author | lloyd <[email protected]> | 2014-11-19 02:52:04 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2014-11-19 02:52:04 +0000 |
commit | dfe33209a78f28e1b5b5b9a43d99d360fd029889 (patch) | |
tree | c19115343f564c00eaabe2dfb45822ba089b0742 /src/lib/compression/zlib/zlib.h | |
parent | 173ccf53649b4635df5fd51974c44dd59eaf9e95 (diff) |
Add gzip compression transform and compress command line prog.
Diffstat (limited to 'src/lib/compression/zlib/zlib.h')
-rw-r--r-- | src/lib/compression/zlib/zlib.h | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/src/lib/compression/zlib/zlib.h b/src/lib/compression/zlib/zlib.h index 55da47a0d..5805efb57 100644 --- a/src/lib/compression/zlib/zlib.h +++ b/src/lib/compression/zlib/zlib.h @@ -46,7 +46,7 @@ class BOTAN_DLL Zlib_Decompression : public Stream_Decompression /** * @param raw_deflate if true no zlib header/trailer will be used */ - Zlib_Decompression( bool raw_deflate = false) : m_raw_deflate(raw_deflate) {} + Zlib_Decompression(bool raw_deflate = false) : m_raw_deflate(raw_deflate) {} std::string name() const override { return "Zlib_Decompression"; } @@ -56,6 +56,41 @@ class BOTAN_DLL Zlib_Decompression : public Stream_Decompression const bool m_raw_deflate; }; +/** +* Gzip Compression +*/ +class BOTAN_DLL Gzip_Compression : public Stream_Compression + { + public: + /** + * @param level how much effort to use on compressing (0 to 9); + * higher levels are slower but tend to give better + * compression + */ + Gzip_Compression(size_t level = 6, byte os_code = 255) : + m_level(level), m_os_code(os_code) {} + + std::string name() const override { return "Gzip_Compression"; } + + private: + Compression_Stream* make_stream() const; + + const size_t m_level; + const byte m_os_code; + }; + +/** +* Gzip Decompression +*/ +class BOTAN_DLL Gzip_Decompression : public Stream_Compression + { + public: + std::string name() const override { return "Gzip_Decompression"; } + + private: + Compression_Stream* make_stream() const; + }; + } #endif |