David Galeano | 85a0921 | 2013-01-09 18:21:33 +0800 | [diff] [blame] | 1 | |
| 2 | #include <zlib.h> |
| 3 | |
David Galeano | ed3bc90 | 2013-01-10 10:24:32 +0800 | [diff] [blame] | 4 | #define DEFLATE_FRAME_COMPRESSION_LEVEL_SERVER 1 |
| 5 | #define DEFLATE_FRAME_COMPRESSION_LEVEL_CLIENT Z_DEFAULT_COMPRESSION |
David Galeano | 85a0921 | 2013-01-09 18:21:33 +0800 | [diff] [blame] | 6 | |
| 7 | struct lws_ext_deflate_frame_conn { |
| 8 | z_stream zs_in; |
| 9 | z_stream zs_out; |
David Galeano | 1aad881 | 2013-01-10 10:18:17 +0800 | [diff] [blame] | 10 | size_t buf_pre_used; |
| 11 | size_t buf_pre_length; |
| 12 | size_t buf_in_length; |
| 13 | size_t buf_out_length; |
David Galeano | 85a0921 | 2013-01-09 18:21:33 +0800 | [diff] [blame] | 14 | int compressed_out; |
David Galeano | 2605ffe | 2013-01-10 09:41:06 +0800 | [diff] [blame] | 15 | unsigned char *buf_pre; |
David Galeano | 85a0921 | 2013-01-09 18:21:33 +0800 | [diff] [blame] | 16 | unsigned char *buf_in; |
| 17 | unsigned char *buf_out; |
| 18 | }; |
| 19 | |
| 20 | extern int lws_extension_callback_deflate_frame( |
| 21 | struct libwebsocket_context *context, |
| 22 | struct libwebsocket_extension *ext, |
| 23 | struct libwebsocket *wsi, |
| 24 | enum libwebsocket_extension_callback_reasons reason, |
| 25 | void *user, void *in, size_t len); |