Mercurial > dovecot > core-2.2
annotate src/lib-compression/compression.h @ 22628:8623737c0129
director: Track connections' last ping time
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 26 Oct 2017 14:07:56 +0300 |
parents | 378ba560ea9f |
children |
rev | line source |
---|---|
14739
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
1 #ifndef COMPRESSION_H |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
2 #define COMPRESSION_H |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
3 |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
4 struct compression_handler { |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
5 const char *name; |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
6 const char *ext; |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
7 bool (*is_compressed)(struct istream *input); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
8 struct istream *(*create_istream)(struct istream *input, |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
9 bool log_errors); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
10 struct ostream *(*create_ostream)(struct ostream *output, int level); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
11 }; |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
12 |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
13 extern const struct compression_handler compression_handlers[]; |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
14 |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
15 /* Lookup handler by its name (gz, bz2) */ |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
16 const struct compression_handler *compression_lookup_handler(const char *name); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
17 /* Detect handler by looking at the first few bytes of the input stream. */ |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
18 const struct compression_handler * |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
19 compression_detect_handler(struct istream *input); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
20 /* Lookup handler based on filename extension in the path */ |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
21 const struct compression_handler * |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
22 compression_lookup_handler_from_ext(const char *path); |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
23 |
378ba560ea9f
Moved zlib/bzlib code to lib-compression library.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
24 #endif |