mt1959_b: per-drive fw_verify_cdb + correct firmware length; v1.0.0-rc.4.3

The variant-B firmware load hardcoded one drive's F1 vendor-verify token
and a fixed 0x9C0 firmware size. Across the 140 B drives the verify CDB
has 39 distinct per-drive values, and the real firmware length is encoded
in each drive's MODE SELECT CDB (2192..2528 bytes) — so the constants were
wrong for ~139 of 140 drives and truncated 13.

- DriveProfile gains fw_verify_cdb (the per-drive 0xF1 verify).
- variant_b uploads firmware.len() (now the correct per-drive size from
  the regenerated profiles.json) and issues profile.fw_verify_cdb, falling
  back to the const only for legacy profiles.
- profiles.json regenerated: 79 firmware fields corrected (13 truncated
  recovered to full length, 66 over-reads trimmed).
- Adds a recording-transport regression test asserting the profile's F1
  verify is issued (not the const) and MODE SELECT carries firmware.len().
This commit is contained in:
Matthew Jackson
2026-06-23 15:40:38 -07:00
parent feacfbb10b
commit 15e263451e
5 changed files with 161 additions and 90 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "freemkv-unlock-ld"
version = "1.0.0-rc.3"
version = "1.0.0-rc.4.3"
edition = "2024"
rust-version = "1.86"
license = "AGPL-3.0-only"