# porter/libsrc/porter/infra/compress/compress_linux.c

# 1 ファイル

## 1.1 porter/libsrc/porter/infra/compress/compress_linux.c

Linux 向け圧縮・解凍モジュール (zlib)。

zlib の deflate/inflate を raw DEFLATE (windowBits = -15) モードで使用します。
Windows 実装 (MSZIP | COMPRESS_RAW) と同一フォーマットを出力するため、 クロスプラットフォーム通信に対応します。

### 1.1.1 作者

c-modernization-kit sample team

### 1.1.2 バージョン

1.0.0

### 1.1.3 日付

2026/03/05

### 1.1.4 著作権

Copyright (C) CompanyName, Ltd. 2026. All rights reserved.

# 2 関数

## 2.1 potr_compress

    int potr_compress ( uint8_t *dst, size_t *dst_len, const uint8_t *src, size_t src_len )

データを圧縮します。

### 2.1.1 引数

- dst [out] 圧縮後データを格納するバッファ。 先頭 4 バイトに元サイズ (NBO) が書き込まれます。
- dst_len [in,out] 入力: dst のバッファサイズ。 出力: 書き込んだバイト数。
- src [in] 圧縮前データへのポインタ。
- src_len [in] 圧縮前データのバイト数。

### 2.1.2 戻り値

成功時は 0、失敗時は -1 を返します。

## 2.2 potr_decompress

    int potr_decompress ( uint8_t *dst, size_t *dst_len, const uint8_t *src, size_t src_len )

圧縮データを解凍します。

### 2.2.1 引数

- dst [out] 解凍後データを格納するバッファ。
- dst_len [in,out] 入力: dst のバッファサイズ。 出力: 書き込んだバイト数。
- src [in] 圧縮後データへのポインタ (先頭 4 バイトは元サイズ)。
- src_len [in] 圧縮後データのバイト数 (ヘッダーを含む)。

### 2.2.2 戻り値

成功時は 0、失敗時は -1 を返します。