loader/util: support regular zstd alongside zbic

This commit is contained in:
hexkyz
2026-06-24 22:08:13 +01:00
parent 10722de8b9
commit 3ace80cc7b
5 changed files with 93 additions and 21 deletions

View File

@@ -18,16 +18,18 @@
#include <vapours.hpp>
namespace ams::util {
constexpr size_t DecompressZstdWithBicWorkBufferSizeDefault = 0x176E8;
/* Compression utilities. */
int CompressLZ4(void *dst, size_t dst_size, const void *src, size_t src_size);
size_t CompressZbic(void *dst, size_t dst_size, const void *src, size_t src_size);
constexpr size_t ZstdDctxWorkspaceSize = 0x176E8;
size_t CompressZstd(void *dst, size_t dst_size, const void *src, size_t src_size);
size_t CompressZstdWithBic(void *dst, size_t dst_size, const void *src, size_t src_size);
/* Decompression utilities. */
int DecompressLZ4(void *dst, size_t dst_size, const void *src, size_t src_size);
size_t DecompressZbic(void *dst, size_t dst_size, const void *src, size_t src_size);
bool DecompressZbicForLoader(void* workspace, size_t workspace_size, void *dst, size_t dst_size, size_t expected_dec_size, const void *src, size_t src_size);
size_t DecompressZstd(void *dst, size_t dst_size, const void *src, size_t src_size);
size_t DecompressZstdWithBic(void *dst, size_t dst_size, const void *src, size_t src_size);
bool DecompressZstdWithBic(void* workspace, size_t workspace_size, void *dst, size_t dst_size, size_t expected_dec_size, const void *src, size_t src_size);
}