summaryrefslogtreecommitdiff
path: root/zlib.h
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2015-11-05 01:59:46 -0500
committerJeffrey Walton <noloader@gmail.com>2015-11-05 01:59:46 -0500
commit48809d4e85c125814425c621d8d0d89f95405924 (patch)
tree1010fd16c4b1199f3d27dd726dda241a2bd29f83 /zlib.h
parent025337a94aceb75d188149db70c2094673772816 (diff)
downloadcryptopp-git-48809d4e85c125814425c621d8d0d89f95405924.tar.gz
CRYPTOPP 5.6.3 RC6 checkin
Diffstat (limited to 'zlib.h')
-rw-r--r--zlib.h118
1 files changed, 60 insertions, 58 deletions
diff --git a/zlib.h b/zlib.h
index 443b1442..258d06b5 100644
--- a/zlib.h
+++ b/zlib.h
@@ -1,58 +1,60 @@
-#ifndef CRYPTOPP_ZLIB_H
-#define CRYPTOPP_ZLIB_H
-
-#include "adler32.h"
-#include "zdeflate.h"
-#include "zinflate.h"
-
-NAMESPACE_BEGIN(CryptoPP)
-
-/// ZLIB Compressor (RFC 1950)
-class ZlibCompressor : public Deflator
-{
-public:
- ZlibCompressor(BufferedTransformation *attachment=NULL, unsigned int deflateLevel=DEFAULT_DEFLATE_LEVEL, unsigned int log2WindowSize=DEFAULT_LOG2_WINDOW_SIZE, bool detectUncompressible=true)
- : Deflator(attachment, deflateLevel, log2WindowSize, detectUncompressible) {}
- ZlibCompressor(const NameValuePairs &parameters, BufferedTransformation *attachment=NULL)
- : Deflator(parameters, attachment) {}
-
- unsigned int GetCompressionLevel() const;
-
-protected:
- void WritePrestreamHeader();
- void ProcessUncompressedData(const byte *string, size_t length);
- void WritePoststreamTail();
-
- Adler32 m_adler32;
-};
-
-/// ZLIB Decompressor (RFC 1950)
-class ZlibDecompressor : public Inflator
-{
-public:
- typedef Inflator::Err Err;
- class HeaderErr : public Err {public: HeaderErr() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: header decoding error") {}};
- class Adler32Err : public Err {public: Adler32Err() : Err(DATA_INTEGRITY_CHECK_FAILED, "ZlibDecompressor: ADLER32 check error") {}};
- class UnsupportedAlgorithm : public Err {public: UnsupportedAlgorithm() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: unsupported algorithm") {}};
- class UnsupportedPresetDictionary : public Err {public: UnsupportedPresetDictionary() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: unsupported preset dictionary") {}};
-
- /*! \param repeat decompress multiple compressed streams in series
- \param autoSignalPropagation 0 to turn off MessageEnd signal
- */
- ZlibDecompressor(BufferedTransformation *attachment = NULL, bool repeat = false, int autoSignalPropagation = -1);
- unsigned int GetLog2WindowSize() const {return m_log2WindowSize;}
-
-private:
- unsigned int MaxPrestreamHeaderSize() const {return 2;}
- void ProcessPrestreamHeader();
- void ProcessDecompressedData(const byte *string, size_t length);
- unsigned int MaxPoststreamTailSize() const {return 4;}
- void ProcessPoststreamTail();
-
- unsigned int m_log2WindowSize;
- Adler32 m_adler32;
-};
-
-NAMESPACE_END
-
-#endif
+#ifndef CRYPTOPP_ZLIB_H
+#define CRYPTOPP_ZLIB_H
+
+#include "cryptlib.h"
+#include "adler32.h"
+#include "zdeflate.h"
+#include "zinflate.h"
+
+NAMESPACE_BEGIN(CryptoPP)
+
+/// ZLIB Compressor (RFC 1950)
+class ZlibCompressor : public Deflator
+{
+public:
+ ZlibCompressor(BufferedTransformation *attachment=NULL, unsigned int deflateLevel=DEFAULT_DEFLATE_LEVEL, unsigned int log2WindowSize=DEFAULT_LOG2_WINDOW_SIZE, bool detectUncompressible=true)
+ : Deflator(attachment, deflateLevel, log2WindowSize, detectUncompressible) {}
+ ZlibCompressor(const NameValuePairs &parameters, BufferedTransformation *attachment=NULL)
+ : Deflator(parameters, attachment) {}
+
+ unsigned int GetCompressionLevel() const;
+
+protected:
+ void WritePrestreamHeader();
+ void ProcessUncompressedData(const byte *string, size_t length);
+ void WritePoststreamTail();
+
+ Adler32 m_adler32;
+};
+
+/// ZLIB Decompressor (RFC 1950)
+class ZlibDecompressor : public Inflator
+{
+public:
+ typedef Inflator::Err Err;
+ class HeaderErr : public Err {public: HeaderErr() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: header decoding error") {}};
+ class Adler32Err : public Err {public: Adler32Err() : Err(DATA_INTEGRITY_CHECK_FAILED, "ZlibDecompressor: ADLER32 check error") {}};
+ class UnsupportedAlgorithm : public Err {public: UnsupportedAlgorithm() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: unsupported algorithm") {}};
+ class UnsupportedPresetDictionary : public Err {public: UnsupportedPresetDictionary() : Err(INVALID_DATA_FORMAT, "ZlibDecompressor: unsupported preset dictionary") {}};
+
+ //! \brief Construct a ZlibDecompressor
+ //! \param attachment a \ BufferedTransformation to attach to this object
+ //! \param repeat decompress multiple compressed streams in series
+ //! \param autoSignalPropagation 0 to turn off MessageEnd signal
+ ZlibDecompressor(BufferedTransformation *attachment = NULL, bool repeat = false, int autoSignalPropagation = -1);
+ unsigned int GetLog2WindowSize() const {return m_log2WindowSize;}
+
+private:
+ unsigned int MaxPrestreamHeaderSize() const {return 2;}
+ void ProcessPrestreamHeader();
+ void ProcessDecompressedData(const byte *string, size_t length);
+ unsigned int MaxPoststreamTailSize() const {return 4;}
+ void ProcessPoststreamTail();
+
+ unsigned int m_log2WindowSize;
+ Adler32 m_adler32;
+};
+
+NAMESPACE_END
+
+#endif