5 #include "wimlib/error.h"
6 #include "wimlib/decompressor_ops.h"
7 #include "wimlib/util.h"
12 zstd_create_decompressor(size_t max_block_size, void **d_ret)
14 *d_ret = ZSTD_createDCtx();
16 return WIMLIB_ERR_NOMEM;
21 zstd_decompress(const void *in, size_t in_nbytes,
22 void *out, size_t out_nbytes, void *_d)
24 size_t res = ZSTD_decompressDCtx(_d, out, out_nbytes, in, in_nbytes);
25 if (res != out_nbytes)
31 zstd_free_decompressor(void *_d)
36 const struct decompressor_ops zstd_decompressor_ops = {
37 .create_decompressor = zstd_create_decompressor,
38 .decompress = zstd_decompress,
39 .free_decompressor = zstd_free_decompressor,