Elektrine lite

← Feed

@jeang3nie@social.linux.pizza

Post #2502497

2026-05-08 04:33 UTC

I've read a couple of different post-mortems on the uutils CVEs in Ubuntu now. I still love Rust, but I'm struck by a couple of things. A lot of this comes down to TOCTOU, time of creation to time of use. Those issues would be mostly mitigated if the code took full advantage of Unix features such as passing file descriptors rather than paths, or passing permissions to file creation functions instead of creating a file and then modifying the permissions. The path of least resistance for Rust code is to use the cross-platform abstractions that work on Windows as well as Unix-like systems. I guess what I'm saying is that zero-cost abstractions might actually be a difficult promise to keep. It's mostly true in terms of performance, but this is a good example of another sort of cost you are likely to pay when details are abstracted away. I'm also reminded of how much I like that Harelang doesn't attempt to support closed-source platforms. I think that's a wise choice that more projects should consider at this point. Once again though, I still like Rust a lot and will continue to use it. I'm less keen on rewrites than I was when I was just starting to program, but for any kind of greenfield project I think Rust is still a great choice, so long as the programmer still takes the time to understand their code fully.

Replies (0)

No replies.