Live data from Hacker News

FFmpeg and a thousand fixes

googleonlinesecurity.blogspot.com

31–40 of 150 posts

Re: FFmpeg and a thousand fixes

#31
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

Really breaking new ground here. What should FFmpeg have been written in? I can think of a few candidates, but I think they share a number of those "wonders".

Before C escaped UNIX, there used to be safer system programming languages like Modula-2, just to cite an example.

But Modula-2 had Lilith to offer, while C had UNIX.

Re: FFmpeg and a thousand fixes

#32
post #23
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

You forgot: - One hell of an awesome encoder/decoder library that can hit more formats than I knew existed. :)

That's not a bug, that's a feature (people just don't realize the POTENTIAL LOL).

Re: FFmpeg and a thousand fixes

#33
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

Really breaking new ground here. What should FFmpeg have been written in? I can think of a few candidates, but I think they share a number of those "wonders".

Clearly the whole project should be scrapped and rewritten in Ruby ;)

Re: FFmpeg and a thousand fixes

#34
post #28
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

I guess the correct solution is to use Java? Then we can bitch about run away garbage collection. How about Python then? It's really "fast". Or we can program it in snide remarks on forums, then we don't even have to write any working code to feel superior.

Modula-2, Ada just to cite two possible examples.

Re: FFmpeg and a thousand fixes

#35
post #30

> At Google, security is a top priority - not only for our own products, but across the entire Internet. Hm, privacy was not on top, I guess - or we're toasted.

Can't deliver privacy guarantees unless you have a secure system in the first place. That's not to say Google does care about privacy, but security being top makes sense.

Re: FFmpeg and a thousand fixes

#36
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

programmers are people

Re: FFmpeg and a thousand fixes

#39
post #31

Earlier quoted context omitted.

Really breaking new ground here. What should FFmpeg have been written in? I can think of a few candidates, but I think they share a number of those "wonders".

Before C escaped UNIX, there used to be safer system programming languages like Modula-2, just to cite an example. But Modula-2 had Lilith to offer, while C had UNIX.

There are other things to consider as well.

Compiler support across various platforms: are there compilers available and do they generate good code?

Mindshare: how big is the intersection of people who know the language and have the domain knowledge to contribute to the project?

Re: FFmpeg and a thousand fixes

#40
post #22

The wonders of C: - NULL pointer dereferences, - Invalid pointer arithmetic leading to SIGSEGV due to unmapped memory access, - Out-of-bounds reads and writes to stack, heap and static-based arrays, - Invalid free() calls, - Double free() calls over the same pointer, - Division errors, - Assertion failures, - Use of uninitialized memory. But hey, any good programmer always writes perfect C code.

Troll.
Post reply on HN