4 ms·
What could go wrong? It's not like there are decades of paying the price of such decisions...
by 77pt77 4y ago
What could go wrong?
It's not like there are decades of paying the price of such decisions...
- yazzku 4y agoAt a cursory glance, they assert((size_t)rv <= n), but if that's the assert.h assert(), it's just void when NDEBUG is defined, and cmake seems to define that when building a Release target. Also, gcc does not seem to define it by default. So that's a bit of an overflow there.
- CyberDildonics 4y agoI think you're mixing up parsing a binary protocol with parsing strings.
- swatcoder 4y agoYou don't have to learn raw systems coding yourself, but if nobody bothers, the code of 2050 is going to be built on a lot of stale, brittle magic that nobody can reproduce or understand. This is exactly the sort of playground effort where those who do want to learn can get their hands dirty. If this is their first time doing this kind of project, they shouldn't use any of this code in production. There will be all sorts of cheated corners and vulnerabilities, and not just in obvious high-risk places like this. That's how hands-on learning goes.