#include "zlib.h"
Go to the source code of this file.
Defines | |
#define | ZLIB_INTERNAL |
Functions | |
int ZEXPORT | compress2 (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen, int level) |
int ZEXPORT | compress (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen) |
uLong ZEXPORT | compressBound (uLong sourceLen) |
#define ZLIB_INTERNAL |
Definition at line 8 of file compress.cc.
int ZEXPORT compress | ( | Bytef * | dest, | |
uLongf * | destLen, | |||
const Bytef * | source, | |||
uLong | sourceLen | |||
) |
Definition at line 57 of file compress.cc.
References compress2().
00058 { 00059 return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION); 00060 }
int ZEXPORT compress2 | ( | Bytef * | dest, | |
uLongf * | destLen, | |||
const Bytef * | source, | |||
uLong | sourceLen, | |||
int | level | |||
) |
Definition at line 22 of file compress.cc.
References deflate(), and deflateEnd().
Referenced by compress().
00023 { 00024 z_stream stream; 00025 int err; 00026 00027 stream.next_in = (Bytef*)source; 00028 stream.avail_in = (uInt)sourceLen; 00029 #ifdef MAXSEG_64K 00030 /* Check for source > 64K on 16-bit machine: */ 00031 if ((uLong)stream.avail_in != sourceLen) return Z_BUF_ERROR; 00032 #endif 00033 stream.next_out = dest; 00034 stream.avail_out = (uInt)*destLen; 00035 if ((uLong)stream.avail_out != *destLen) return Z_BUF_ERROR; 00036 00037 stream.zalloc = (alloc_func)0; 00038 stream.zfree = (free_func)0; 00039 stream.opaque = (voidpf)0; 00040 00041 err = deflateInit(&stream, level); 00042 if (err != Z_OK) return err; 00043 00044 err = deflate(&stream, Z_FINISH); 00045 if (err != Z_STREAM_END) { 00046 deflateEnd(&stream); 00047 return err == Z_OK ? Z_BUF_ERROR : err; 00048 } 00049 *destLen = stream.total_out; 00050 00051 err = deflateEnd(&stream); 00052 return err; 00053 }
uLong ZEXPORT compressBound | ( | uLong | sourceLen | ) |