Fixed - ld/profile: find_by_drive_id no longer mis-binds a drive whose reported product_id is real but uncatalogued to a sibling model's profile (and its wrong LibreDrive microcode); the product-id-blind loose match is gated on an empty id. Docs / CI - Third-party NOTICE for the LibreDrive microcode bundled in profiles.json; cargo-deny gate (#15) and audience-based comment-guard (#17).
965 B
DriveProfile field visibility and allow(dead_code)
Only identity and signature are public — they are what the catalog is
public FOR ("is this drive supported?", and the emulator's impersonation).
Everything below them is unlock MECHANISM: the MediaTek firmware image and
the per-drive vendor CDB templates. Cargo.toml says this crate is never
published because it carries drive firmware; re-exporting DriveProfile
with a pub firmware: Vec<u8> handed that firmware, and every vendor CDB,
to any downstream crate that called ld::profile(). They are pub(crate)
so the mechanism stays inside the unlocker.
allow(dead_code): this is the on-disk catalog schema, and several
captured CDB templates have no in-crate consumer yet. They were pub
before, so the compiler saw the (external) use; making them pub(crate)
is what exposes them as unread. Deleting them would silently drop fields
from the format the profile-extraction pipeline emits.