4 ms·
"Unfortunately, most WHIP implementations are highly complex and require modern C++11 or C++14, or RUST...To meet FFmpeg's requirements, this PR contains just C
by stevemk14ebr 3y ago
"Unfortunately, most WHIP implementations are highly complex and require modern C++11 or C++14, or RUST...To meet FFmpeg's requirements, this PR contains just C code. And we have rewritten the WHIP and WebRTC protocol stack using only around 2k lines of C code."
Where is the section on the security audit? For a protocol accepting remote streams especially this seems like a vector for exploitable bugs to be introduced unintentionally.
- MuffinFlavored 3y agowhy couldn't they just compile with Rust to a .dll/.dylib/.so and then do some dlopen / dlsym FFI? :P
- rcme 3y agoIt’s too hard to support every possible target that way.
- Sean-Der 3y agoI tried to do this with OBS. The code worked really well. It was so stable and performant. Life is significantly better not debugging SEGV. However it puts too much burden on the maintainers. So much work goes into packaging etc… I don’t have much hope for the ‘Rust as a submodule in a C/C++ project’ story :(
- Svenstaro 3y ago389-ds does the latter more or less as far as I can tell.
- dmm 3y agoFFmpeg is an amazing project that everybody uses for good reasons but it's not written with the extreme focus on security that writing secure C demands. If you're using it in an adversarial environment or with untrusted data you should be sandboxing it.