inspection: Better checking for Windows root disks (RHBZ#729075).
authorRichard W.M. Jones <rjones@redhat.com>
Mon, 8 Aug 2011 17:52:23 +0000 (18:52 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Wed, 17 Aug 2011 12:05:22 +0000 (13:05 +0100)
commitf5036236ffd4420c6d7e42a5738b2be7d1f6cc3c
tree02a120670845ae706f3859a750172bf44590bb1f
parent1f980d1b103bae48b4c27164a7588466ba9ad5cb
inspection: Better checking for Windows root disks (RHBZ#729075).

Previously any disk that had /autoexec.bat or /boot.ini or /ntldr
would be picked up as a candidate for a Windows root disk.  If further
checking could not find any systemroot (eg. /windows) then this would
result in complete failure of inspection.

In particular, this got confused by Hp_recovery partitions which have
/autoexec.bat, but don't have a systemroot in one of the usual places
(they have /MiniNT instead).

What we do now is to properly investigate all possible systemroot
places before deciding this is a Windows systemroot, so the subsequent
failure cannot occur.

(Thanks to lorimar for reporting this bug).

Cherry picked from commit 2c57305f72cd6181d1849ae6e1b892aa01c7f844
and backported to stable-1.10 branch.
src/guestfs-internal.h
src/inspect_fs.c
src/inspect_fs_windows.c