aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/compression/zlib/zlib.h
diff options
context:
space:
mode:
authorlloyd <[email protected]>2014-11-19 02:52:04 +0000
committerlloyd <[email protected]>2014-11-19 02:52:04 +0000
commitdfe33209a78f28e1b5b5b9a43d99d360fd029889 (patch)
treec19115343f564c00eaabe2dfb45822ba089b0742 /src/lib/compression/zlib/zlib.h
parent173ccf53649b4635df5fd51974c44dd59eaf9e95 (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.h37
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