int lz_fx_compress(void *src, uint64_t srclen, void *dst, uint64_t *dstlen, int level, uchar_t chdr, int btype, void *data) { int rv; struct lzfx_params *lzdat = (struct lzfx_params *)data; unsigned int _srclen = srclen; unsigned int _dstlen = *dstlen; /* * Ignore compressed data in fast modes. */ if (level < 7 && PC_TYPE(btype) == TYPE_COMPRESSED) return (-1); rv = lzfx_compress(src, _srclen, dst, &_dstlen, lzdat->htab_bits); if (rv != 0) { if (rv != LZFX_ESIZE) lz_fx_err(rv); return (-1); } *dstlen = _dstlen; return (0); }
int lz_fx_decompress(void *src, uint64_t srclen, void *dst, uint64_t *dstlen, int level, uchar_t chdr, void *data) { int rv; unsigned int _srclen = srclen; unsigned int _dstlen = *dstlen; rv = lzfx_decompress(src, _srclen, dst, &_dstlen); if (rv != 0) { lz_fx_err(rv); return (-1); } *dstlen = _dstlen; return (0); }
int lz_fx_compress(void *src, uint64_t srclen, void *dst, uint64_t *dstlen, int level, uchar_t chdr, void *data) { int rv; struct lzfx_params *lzdat = (struct lzfx_params *)data; unsigned int _srclen = srclen; unsigned int _dstlen = *dstlen; rv = lzfx_compress(src, _srclen, dst, &_dstlen, lzdat->htab_bits); if (rv != 0) { if (rv != LZFX_ESIZE) lz_fx_err(rv); return (-1); } *dstlen = _dstlen; return (0); }