Skip to content

Re-vendor qnxprobe 1.17: HFS+ and APFS volumes - #199

Merged
abrignoni merged 1 commit into
mainfrom
chore/revendor-qnxprobe-1.17
Sep 9, 2026
Merged

abrignoni merged 1 commit into
mainfrom
chore/revendor-qnxprobe-1.17

Conversation

@abrignoni

Copy link
Copy Markdown
Owner

Updates the vendored reader from 1.14 to 1.17, which adds HFS+ and APFS.

  • The old copy does not recognise either. On the reader's own fixture images, old against new: APFS none extracted to 411 files, HFS+ none to 412, NTFS unchanged at 488.
  • Checked through FileSeekerRaw, not the command line alone. Staged bytes match what an independent reader recorded per fixture: APFS 411 of 411, NTFS 475 of 475, HFS+ 411 of 412, the gap being the symlink the reader reports as skipped.
  • 1.17 also carries two fixes made after 1.16. The NTFS walker no longer follows a directory index entry whose file reference names a different record generation. The APFS lookup no longer rebuilds its leaf-key list per call.
  • The four places that enumerate what -t raw reads are updated. admin/docs/raw_image_input.md had also been missing NTFS since it was added.

ewfprobe is unchanged and still matches its upstream. Suite: 218 passed, 3 skipped.

🤖 Generated with Claude Code

The vendored copy was 1.14, which does not recognise HFS+ or APFS at all.
Measured on the reader's own fixture images with the old copy and the new
one: APFS went from no volumes extracted to 411 files, HFS+ from none to
412, NTFS unchanged at 488.

Proven through FileSeekerRaw rather than the command line alone. The
staged bytes match what an independent reader recorded for each fixture:
APFS 411 of 411, NTFS 475 of 475, HFS+ 411 of 412, the one gap being the
symlink the reader reports as skipped.

1.17 also carries two fixes that landed after 1.16. The NTFS walker no
longer follows a directory index entry whose file reference names a
different record generation, so a reused record is no longer reported
under the name an old entry left behind. The APFS lookup no longer
rebuilds its leaf-key list on every call.

The four places that enumerate what -t raw reads are brought up to date.
admin/docs/raw_image_input.md had also been missing NTFS since it was
added.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@abrignoni
abrignoni merged commit 7a1dfce into main Sep 9, 2026
8 checks passed
@abrignoni
abrignoni deleted the chore/revendor-qnxprobe-1.17 branch September 9, 2026 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant