Skip to content

DVB lockstep 11.0.1

Choose a tag to compare

@github-actions github-actions released this 11 Oct 08:08
· 391 commits to main since this release
b314d29

v11.0.1 — 2026-10-11

Lockstep patch. dvb-si no longer panics on truncated input in its table
parsers
: the big-endian field reads in the table, descriptor and text
parsers went through first_chunk::<N>().unwrap() / try_into().unwrap()
guarded only by an earlier length check. They now use one checked
be_u16/be_u32 reader that returns Error::BufferTooShort, so a refactor
that loosens a guard can no longer turn hostile broadcast input into a
panic. Valid input parses byte-identically (every fixture round-trip is
unchanged). The other lockstep crates bump to 11.0.1 for lockstep parity
only — no source change.

Fixed (dvb-si)

  • Production parsers in tables/, descriptors/, compatibility and text
    no longer contain first_chunk().unwrap() / try_into().unwrap(); a new
    tests/truncation_no_panic.rs asserts every strict prefix of a PAT and
    five descriptors yields Err, never a panic.

Crate versions

Crate Version
dvb-si 11.0.1
dvb-t2mi 11.0.1
dvb-bbframe 11.0.1
dvb-conformance 11.0.1
dvb-tools 11.0.1

Companion crate patches (independent tags, same release)

  • transmux 0.25.1 — checked be_u64 for tkhd/mdhd v1 fields.
  • rtmp-runtime 0.7.1 — ChunkWriter::write returns an error instead of panicking on an invalid chunk stream id.
  • dvb-csa 0.3.1 — control-word state is zeroed through the vetted zeroize crate.
  • dvb-ci-runtime 0.17.1 — CA ioctls isolated in one private module with a kernel-layout test.
  • multimux 0.11.1 — admin install and WHIP transport no longer expect on internal state.