hfspax
アーカイブを解こうとすると、ustar形式のヘッダがおかしいんじゃ、ボケ、と怒鳴られる。怒鳴られて、処理が途中で止まる。
嫌な予感を感じつつ、俺はバイナリエディタでアーカイブを開いた。ustar形式は、格納しているファイルごとに512バイト固定長のヘッダを持つ。その後ろに、ファイルのデータが512で割り切れる長さでくっつく。だから、例えば、800バイトのデータは、
- 512バイトのustar形式ヘッダ
- 512バイトのファイルデータ
- 278バイトのファイルデータ+埋め草234バイト
のようにアーカイブ化される。だが、hfspaxは、FINFリソースを格納するときに、おかしなustar形式のデータ、512バイトで割り切れないデータを作成する。
そりゃ元に戻らんだろ。