162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Adapted for linux kernel by Alexander Mamaev: 462306a36Sopenharmony_ci * - remove implementations of get_unaligned_ 562306a36Sopenharmony_ci * - assume GCC is always defined 662306a36Sopenharmony_ci * - ISO C90 762306a36Sopenharmony_ci * - linux kernel code style 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#ifndef _LINUX_NTFS3_LIB_LIB_H 1162306a36Sopenharmony_ci#define _LINUX_NTFS3_LIB_LIB_H 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#include <linux/types.h> 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci/* globals from xpress_decompress.c */ 1662306a36Sopenharmony_cistruct xpress_decompressor *xpress_allocate_decompressor(void); 1762306a36Sopenharmony_civoid xpress_free_decompressor(struct xpress_decompressor *d); 1862306a36Sopenharmony_ciint xpress_decompress(struct xpress_decompressor *__restrict d, 1962306a36Sopenharmony_ci const void *__restrict compressed_data, 2062306a36Sopenharmony_ci size_t compressed_size, 2162306a36Sopenharmony_ci void *__restrict uncompressed_data, 2262306a36Sopenharmony_ci size_t uncompressed_size); 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci/* globals from lzx_decompress.c */ 2562306a36Sopenharmony_cistruct lzx_decompressor *lzx_allocate_decompressor(void); 2662306a36Sopenharmony_civoid lzx_free_decompressor(struct lzx_decompressor *d); 2762306a36Sopenharmony_ciint lzx_decompress(struct lzx_decompressor *__restrict d, 2862306a36Sopenharmony_ci const void *__restrict compressed_data, 2962306a36Sopenharmony_ci size_t compressed_size, void *__restrict uncompressed_data, 3062306a36Sopenharmony_ci size_t uncompressed_size); 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci#endif /* _LINUX_NTFS3_LIB_LIB_H */ 33