Repository navigation
v0.4.29
v0.4.29: every FIT/MFIT tool is found, and the check result is short
Why the tool was still missed
Detection relied on running the tool with -h and reading its output. That fails for
two real cases:
- MFIT (CSME 15/16) is a GUI build. With
-hit prints nothing to the console and
waits, so the probe timed out and the import refused the file. The tool never
reached the library, so "Check Tools" could never see it. - The check hid what it did not know. It listed only tools that had already been
identified, so an unidentified file that was scanned was silently left out.
Both are fixed.
What changed
- Identity is read from the file itself. Both FIT and MFIT carry their banner and
theirFileVersioninside the executable (as UTF-16 on Windows). The app now reads
those bytes, so nothing is executed, a GUI tool cannot hang the check, and a Windows
.exeis identified the same way anywhere.-his used only when the file does not
state a version. - Nothing is dropped. Tools are imported whether or not they were already
identified, and a program whose version cannot be read is kept and listed as
"not identified" instead of being refused. - More file names are recognised, including
Flash Image Tool.exe,FIT*.exe,
MFIT*.exeandFITC*.exe. - "Check Tools For This Image" is short. It now prints the image, the ME version
with the tool it needs, the matching tool, and any other tools found. No paths, no
confidence notes, no explanation text.
Example result for a CSME 16 image:
Image: your_dump.bin
ME: 16.1.25.1991 - needs MFIT 16.1
Matching tool: MFIT 16.1.25.2053 (Windows)
Other tools: FIT 11.8.86.3877, FIT 15.40.16.2534
- Removed the "Mark as FIT/MFIT manually" button and the duplicated probe code.
Verification
- 660 tests pass;
ruffclean. CI: Linux tests on 3.10/3.11/3.12 and the Windows
build all pass. - New tests cover: a Windows GUI tool identified from its bytes while being
non-executable (so it provably never ran), the exactfit.exe -hbanner, a BIOS
image never identified as a tool, a tool that is listed but not hidden when its
version is unknown, and the short check output.
Note on the dump you sent
The 32 MB image analysed earlier reports ME 16.1.25.1991 and no structural problems;
its own ME region uses the CSE LT layout, so partition cleaning does not apply to it
and only the HAP soft-disable is available.
Downloads (SHA-256 from the GitHub release API)
BIOSRecoverySuite-portable-0.4.29.zip:sha256:3c19686979378b6b93a6a3e1e7f89a23113f3ac660a2a0b4263dec1709567c97BIOSRecoverySuite-Setup-0.4.29.exe:sha256:5d4e3c68cac779f8b000e8b042baed3c28ebae88a50b1c16ead06571c192ee73BIOSRecoverySuite-Setup-0.4.29.exe.sig:sha256:affdf2eb78f8f6a84dcb0c53a9aa016dd8002173e03f9eeef6043de0c46b093a