Botan 2.19.5 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
14 namespace Botan {
15
16/**
17* Zlib Compression
18*/
19 class BOTAN_PUBLIC_API(2,0) Zlib_Compression final : public Stream_Compression
20 {
21 public:
22 std::string name() const override { return "Zlib_Compression"; }
23 private:
24 Compression_Stream* make_stream(size_t level) const override;
25 };
26
27/**
28* Zlib Decompression
29*/
30 class BOTAN_PUBLIC_API(2,0) Zlib_Decompression final : public Stream_Decompression
31 {
32 public:
33 std::string name() const override { return "Zlib_Decompression"; }
34 private:
35 Compression_Stream* make_stream() const override;
36 };
37
38/**
39* Deflate Compression
40*/
41 class BOTAN_PUBLIC_API(2,0) Deflate_Compression final : public Stream_Compression
42 {
43 public:
44 std::string name() const override { return "Deflate_Compression"; }
45 private:
46 Compression_Stream* make_stream(size_t level) const override;
47 };
48
49/**
50* Deflate Decompression
51*/
52 class BOTAN_PUBLIC_API(2,0) Deflate_Decompression final : public Stream_Decompression
53 {
54 public:
55 std::string name() const override { return "Deflate_Decompression"; }
56 private:
57 Compression_Stream* make_stream() const override;
58 };
59
60/**
61* Gzip Compression
62*/
63 class BOTAN_PUBLIC_API(2,0) Gzip_Compression final : public Stream_Compression
64 {
65 public:
66 explicit Gzip_Compression(uint8_t os_code = 255, uint64_t hdr_time = 0) :
67 m_hdr_time(hdr_time), m_os_code(os_code) {}
68
69 std::string name() const override { return "Gzip_Compression"; }
70 private:
71 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*/
79 class BOTAN_PUBLIC_API(2,0) Gzip_Decompression final : public Stream_Decompression
80 {
81 public:
82 std::string name() const override { return "Gzip_Decompression"; }
83 private:
84 Compression_Stream* make_stream() const override;
85 };
86
87}
88
89#endif
Botan::Compression_Stream
Definition: compression.h:171
Botan::Deflate_Compression
Definition: zlib.h:42
Botan::Deflate_Compression::name
std::string name() const override
Definition: zlib.h:44
Botan::Deflate_Decompression
Definition: zlib.h:53
Botan::Deflate_Decompression::name
std::string name() const override
Definition: zlib.h:55
Botan::Gzip_Compression
Definition: zlib.h:64
Botan::Gzip_Compression::name
std::string name() const override
Definition: zlib.h:69
Botan::Gzip_Compression::Gzip_Compression
Gzip_Compression(uint8_t os_code=255, uint64_t hdr_time=0)
Definition: zlib.h:66
Botan::Gzip_Decompression
Definition: zlib.h:80
Botan::Gzip_Decompression::name
std::string name() const override
Definition: zlib.h:82
Botan::Stream_Compression
Definition: compression.h:194
Botan::Stream_Decompression
Definition: compression.h:217
Botan::Zlib_Compression
Definition: zlib.h:20
Botan::Zlib_Compression::name
std::string name() const override
Definition: zlib.h:22
Botan::Zlib_Decompression
Definition: zlib.h:31
Botan::Zlib_Decompression::name
std::string name() const override
Definition: zlib.h:33
final
int(* final)(unsigned char *, CTX *)
Definition: commoncrypto_hash.cpp:29
BOTAN_PUBLIC_API
#define BOTAN_PUBLIC_API(maj, min)
Definition: compiler.h:31
Botan
Definition: alg_id.cpp:13