Shine Get

  • 0 Posts
  • 29 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle








  • fartsparkles@sh.itjust.workstoOpen Source@lemmy.mlVentoy Update
    link
    fedilink
    arrow-up
    22
    arrow-down
    4
    ·
    edit-2
    21 days ago

    You’ve been on vacation for 5+ months?

    Also wouldn’t it be best to post this communication in the issue thread?

    Given how long this has gone on now, it’d probably be best to inform your community that you’ll be removing BLOBs from the source and for them to be produced during build otherwise this shadow is going to remain.

    This was the first time I’ve ever heard of your software and has kind of made me want to steer clear of it.



  • I’m not insisting anything; stating C is not a memory-safe language isn’t a subjective opinion.

    Note I’m not even a Rust fan; I still prefer C because it’s what I know. But the kernel isn’t written by a bunch of Lewis Hamiltons; so many patches are from one-time contributors and the kernel continues to get inundated with memory safety bugs that no amount of infrastructure, testing, code review, etc is catching. Linux is written by monkeys with a few Hamiltons doing their best to review everything before merging.

    Linus has talked about this repeatedly over the past few years at numerous conferences and there’s a reason he’s integrating Rust drivers and subsystems (and not asking them to fork as you are suggesting) to stop the kernel stagnating and to begin to address the issues like one-off patches that aren’t maintained by their original author and to start squashing the volume of memory corruption bugs that are causing 2/3rds of the kernel’s vulnerabilities.


  • No idea what you’re being downvoted. Just take a look at all the critical CVSS scored vulnerabilities in the Linux kernel over the past decade. They’re all overwhelmingly due to pitfalls of the C language - they’re rarely architectural issues but instead because some extra fluff wasn’t added to double check the size of an int or a struct etc resulting in memory corruption. Use after frees, out of bounds reads, etc.

    These are pretty much wiped out entirely by Rust and caught at compile time (or at runtime with a panic).

    The cognitive load of writing safe C, and the volume of extra code it requires, is the problem of C.

    You can write safe C, if you know what you’re doing (but as shown by the volume of vulns, even the world’s best C programmers still make slip ups).

    Rust forces safe® code without any of the cognitive load of C and without having to go out of your way to learn it and religiously implement it.