Botan 3.4.0
Crypto and TLS for C&
zlib.h
Go to the documentation of this file.
1/*
2* Zlib Compressor
3* (C) 2001 Peter J Jones
4* 2001-2007,2014 Jack Lloyd
5*
6* Botan is released under the Simplified BSD License (see license.txt)
7*/
8
9#ifndef BOTAN_ZLIB_H_
10#define BOTAN_ZLIB_H_
11
12#include <botan/compression.h>
13
14namespace Botan {
15
16/**
17* Zlib Compression
18*/
20 public:
21 std::string name() const override { return "Zlib_Compression"; }
22
23 private:
24 std::unique_ptr<Compression_Stream> make_stream(size_t level) const override;
25};
26
27/**
28* Zlib Decompression
29*/
31 public:
32 std::string name() const override { return "Zlib_Decompression"; }
33
34 private:
35 std::unique_ptr<Compression_Stream> make_stream() const override;
36};
37
38/**
39* Deflate Compression
40*/
42 public:
43 std::string name() const override { return "Deflate_Compression"; }
44
45 private:
46 std::unique_ptr<Compression_Stream> make_stream(size_t level) const override;
47};
48
49/**
50* Deflate Decompression
51*/
53 public:
54 std::string name() const override { return "Deflate_Decompression"; }
55
56 private:
57 std::unique_ptr<Compression_Stream> make_stream() const override;
58};
59
60/**
61* Gzip Compression
62*/
64 public:
65 explicit Gzip_Compression(uint8_t os_code = 255, uint64_t hdr_time = 0) :
66 m_hdr_time(hdr_time), m_os_code(os_code) {}
67
68 std::string name() const override { return "Gzip_Compression"; }
69
70 private:
71 std::unique_ptr<Compression_Stream> make_stream(size_t level) const override;
72 const uint64_t m_hdr_time;
73 const uint8_t m_os_code;
74};
75
76/**
77* Gzip Decompression
78*/
80 public:
81 std::string name() const override { return "Gzip_Decompression"; }
82
83 private:
84 std::unique_ptr<Compression_Stream> make_stream() const override;
85};
86
87} // namespace Botan
88
89#endif
std::string name() const override
Definition zlib.h:43
std::string name() const override
Definition zlib.h:54
std::string name() const override
Definition zlib.h:68
Gzip_Compression(uint8_t os_code=255, uint64_t hdr_time=0)
Definition zlib.h:65
std::string name() const override
Definition zlib.h:81
std::string name() const override
Definition zlib.h:21
std::string name() const override
Definition zlib.h:32
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
Definition compiler.h:31