Skip to main content

Crate bootsmith_iso

Crate bootsmith_iso 

Source
Expand description

ISO9660 inspection. Two responsibilities:

  1. Classify an ISO into one of the four BootMode families so the pipeline knows what to build (auto-mode resolution).
  2. Inspect an ISO well enough to dry-run the file copy step without actually mounting it via hdiutil.

The classifier walks the ISO9660 directory tree and applies the current mode markers:

  • Hybrid: protective MBR / GPT signature at offset 0x1FE + EFI System Partition GUID present in protective MBR area.
  • Windows NT5: contains I386/TXTSETUP.SIF plus NT5 loader/marker files.
  • Windows: contains bootmgr AND sources/install.wim or sources/install.esd.
  • IsolinuxLinux: contains isolinux/isolinux.bin.
  • UefiOnly: contains EFI/BOOT/BOOTX64.EFI (or other UEFI loader path) AND lacks an MBR signature.

Windows 2000 media (NT 5.0) is split out from XP/2003 (NT 5.1/5.2) using the WIN51/WIN52 root-marker files that Microsoft has shipped on XP-and-later install media since XP launched. Presence = XP/2003 → WindowsNtXp; absence (but still NT5-class) = Win2k → Windows2000. The two modes share the GRUB4DOS chain shape but differ in the textmode ramdisk driver (FiraDisk vs SVBus).

Vista (and a handful of other Microsoft install DVDs) ship a stub ISO9660 whose PVD root contains only README.TXT; the real install tree lives in UDF. The [udf] module walks that tree so the classifier still sees BOOTMGR and SOURCES/INSTALL.WIM on those discs.

Enums§

IsoError

Functions§

classify
Inspect an ISO and return the boot mode that should be used.

Type Aliases§

Result