Claude Fable 5 5313b1935d Add SidecarLayout: streaming layout API for virtual sidecars
Prelude bytes + offset math for the fixed two-entry (Finder Info +
resource fork) container, so a consumer serving a virtual sidecar
(fsinspect's FUSE AppleDouble mode) can answer getattr from total_len
and dispatch range reads via plan_read without materializing the
container. Byte-equivalence with build_appledouble is pinned by test.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 11:51:33 -05:00

appledouble

AppleSingle/AppleDouble container codec: exhaustive parse, lossless build.

Extracted from ad-decoder as a shared crate. Entries decode into a BTreeMap<u32, Vec<u8>> with typed views over Real Name (3), Comment (4), File Dates (8), Finder Info (9), and Macintosh File Info (10) — everything else is preserved as raw bytes, so parse → build round trips are lossless even for entry types this crate has no opinion about. The macOS ATTR extension (arbitrary xattrs packed after Finder Info) is parsed and rebuilt.

Consumers:

  • ad-decoder — assertive (non-obliterative) sidecar folding onto APFS
  • adx — AS/AD inspection and editing
  • fsinspect — FUSE-side AppleDouble synthesis for Linux EA recovery
Description
No description provided
Readme 57 KiB
Languages
Rust 100%