#include <grpc/support/port_platform.h>
#include "src/core/lib/compression/message_compress.h"
#include <string.h>
#include <zconf.h>
#include <zlib.h>
#include <grpc/slice_buffer.h>
#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include "src/core/lib/slice/slice.h"
#define OUTPUT_BLOCK_SIZE …
static int zlib_body(z_stream* zs, grpc_slice_buffer* input,
grpc_slice_buffer* output,
int (*flate)(z_stream* zs, int flush)) { … }
static void* zalloc_gpr(void* , unsigned int items,
unsigned int size) { … }
static void zfree_gpr(void* , void* address) { … }
static int zlib_compress(grpc_slice_buffer* input, grpc_slice_buffer* output,
int gzip) { … }
static int zlib_decompress(grpc_slice_buffer* input, grpc_slice_buffer* output,
int gzip) { … }
static int copy(grpc_slice_buffer* input, grpc_slice_buffer* output) { … }
static int compress_inner(grpc_compression_algorithm algorithm,
grpc_slice_buffer* input, grpc_slice_buffer* output) { … }
int grpc_msg_compress(grpc_compression_algorithm algorithm,
grpc_slice_buffer* input, grpc_slice_buffer* output) { … }
int grpc_msg_decompress(grpc_compression_algorithm algorithm,
grpc_slice_buffer* input, grpc_slice_buffer* output) { … }