Rust advisories / stainless_ffmpeg
UnsoundRUSTSEC-2025-0169 · stainless_ffmpeg
RUSTSEC-2025-0169: `FormatContext` stream accessors can cause undefined behavior from safe code
Short answerstainless_ffmpeg has an API that can cause undefined behaviour from safe code: `FormatContext` stream accessors can cause undefined behavior from safe code. Fixed in 0.6.0.
| Crate | stainless_ffmpeg |
|---|---|
| Type | Unsound |
| Affected versions | Before 0.6.0. |
| Fixed in | 0.6.0 |
| Severity | not scored |
| Published | 2025-04-24 |
| Last changed | 2026-08-11 |
| Also known as | none |
| Affected functions | stainless_ffmpeg::format_context::FormatContext::get_codec_id, stainless_ffmpeg::format_context::FormatContext::get_stream, stainless_ffmpeg::format_context::FormatContext::get_stream_type, stainless_ffmpeg::format_context::FormatContext::get_stream_type_name |
What to do
- See which version you have:
cargo tree -i stainless_ffmpeg(it also shows which of your dependencies pulls it in). - Update within your version requirement:
cargo update -p stainless_ffmpeg. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for examplestainless_ffmpeg = "0.6.0") or update the dependency that pulls it in. - Check again with
cargo audit, or paste your Cargo.lock into our Cargo.toml checker.
Details from the advisory
Affected versions of stainless_ffmpeg exposed several safe public methods on FormatContext that accepted a stream_index parameter and used it in unsafe pointer operations without checking whether the index was valid. These methods performed pointer arithmetic and dereferenced the resulting stream pointer. Safe callers could pass a negative or out-of-bounds stream_index, which could cause out-of-bounds pointer access and undefined behavior from safe Rust code.
The issue was fixed in version 0.6.0 by marking the affected stream accessor methods as unsafe and documenting that callers must ensure stream_index is a valid stream index.
References
- Package: crates.io/crates/stainless_ffmpeg
- Advisory: rustsec.org/advisories/RUSTSEC-2025-0169.html
- Report: github.com/nomalab/stainless-ffmpeg/issues/63
- Web: github.com/nomalab/stainless-ffmpeg/pull/64
- Web: github.com/nomalab/stainless-ffmpeg/commit/a649e8cb4e7c9859279d1dc85051df5e7a4932f7
From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.
Up next
Are you affected?Check your whole dependency treePaste Cargo.lock: every advisory, for your exact versions.Read it next →Also worth your time
Did this answer your question?