mirror of
https://github.com/freemkv/libfreemkv.git
synced 2026-10-07 18:13:10 +00:00
Security - Remove the unsafe Vec::set_len over recycled sector buffers — UB reachable from safe code (GHSA-j8ww-f5fg-9pmh, low). Uses Vec::resize; pooling unchanged. CI / tooling - clippy on stable with the MSRV single-sourced from Cargo.toml; cargo-deny dependency-audit gate with first-party git sources allowed (#15); audience-based comment-guard (#17). Docs - README (keydb ownership, BD-J parser count), drive-access transport/reset notes, mux timeline module-doc links.
24 lines
1.0 KiB
Markdown
24 lines
1.0 KiB
Markdown
# src/dvdnav/mod.rs
|
|
|
|
## Module rationale
|
|
|
|
Byte layout follows the DVD-Video specification (VMGI/VTSI headers,
|
|
PGC/cell tables, PCI/HLI button packets); the VM command decoder is
|
|
verified against real discs.
|
|
|
|
Current contents: `vmcmd` — the VM command decoder; `nav` — the
|
|
First-Play navigation executor that resolves which title the disc's own
|
|
navigation selects as the feature.
|
|
|
|
## `resolve_feature_start` — parked status (issue #40)
|
|
|
|
PARKED (issue #40, `USE_NAV_RESOLVER=false`): this is intentionally a stub,
|
|
not an accidental dead one. It unconditionally returns `None` and ignores
|
|
`reader`/`udf` on purpose — the IFO/PCI parsing + nav executor (built on
|
|
`vmcmd`) land incrementally behind that flag. Until wired in, calling this
|
|
is behaviour-neutral (the caller always falls back); improvements to the
|
|
resolver take effect here without touching the call site. Do not delete.
|
|
|
|
`reader`/`udf` are the seam inputs the nav executor will consume to read
|
|
VIDEO_TS.IFO + the VTS IFOs/menu VOBs. Reserved until that lands.
|