projects/linux·blob master · refs

29 lines · 1.1 KiB

1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * lib.h - Public declarations for the LZX and XPRESS decompressors.
4 *
5 * Adapted for the linux kernel. These are the low-level decompressor
6 * allocations; WOF (system-compressed) access goes through the
7 * ntfs_codec_ops interface declared in "../ntfs_codec.h".
8 */
9
10#ifndef _LINUX_NTFS_LIB_LIB_H
11#define _LINUX_NTFS_LIB_LIB_H
12
13#include <linux/types.h>
14
15/* globals from xpress_decompress.c */
16struct xpress_decompressor *xpress_allocate_decompressor(void);
17void xpress_free_decompressor(struct xpress_decompressor *d);
18int xpress_decompress(struct xpress_decompressor *d,
19 const void *compressed_data, size_t compressed_size,
20 void *uncompressed_data, size_t uncompressed_size);
21
22/* globals from lzx_decompress.c */
23struct lzx_decompressor *lzx_allocate_decompressor(void);
24void lzx_free_decompressor(struct lzx_decompressor *d);
25int lzx_decompress(struct lzx_decompressor *d, const void *compressed_data,
26 size_t compressed_size, void *uncompressed_data,
27 size_t uncompressed_size);
28
29#endif /* _LINUX_NTFS_LIB_LIB_H */