compress.h revision 60573
1/* 2 * 3 * compress.h 4 * 5 * Author: Tatu Ylonen <ylo@cs.hut.fi> 6 * 7 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 8 * All rights reserved 9 * 10 * Created: Wed Oct 25 22:12:46 1995 ylo 11 * 12 * Interface to packet compression for ssh. 13 * 14 */ 15 16/* RCSID("$Id: compress.h,v 1.4 2000/04/14 10:30:31 markus Exp $"); */ 17 18#ifndef COMPRESS_H 19#define COMPRESS_H 20 21/* 22 * Initializes compression; level is compression level from 1 to 9 (as in 23 * gzip). 24 */ 25void buffer_compress_init(int level); 26 27/* Frees any data structures allocated by buffer_compress_init. */ 28void buffer_compress_uninit(); 29 30/* 31 * Compresses the contents of input_buffer into output_buffer. All packets 32 * compressed using this function will form a single compressed data stream; 33 * however, data will be flushed at the end of every call so that each 34 * output_buffer can be decompressed independently (but in the appropriate 35 * order since they together form a single compression stream) by the 36 * receiver. This appends the compressed data to the output buffer. 37 */ 38void buffer_compress(Buffer * input_buffer, Buffer * output_buffer); 39 40/* 41 * Uncompresses the contents of input_buffer into output_buffer. All packets 42 * uncompressed using this function will form a single compressed data 43 * stream; however, data will be flushed at the end of every call so that 44 * each output_buffer. This must be called for the same size units that the 45 * buffer_compress was called, and in the same order that buffers compressed 46 * with that. This appends the uncompressed data to the output buffer. 47 */ 48void buffer_uncompress(Buffer * input_buffer, Buffer * output_buffer); 49 50#endif /* COMPRESS_H */ 51