Also for some reason this article created a 500+ comment thread on the Orange Website where boomers complain about the authors pronouns.
I genuinely can’t tell if this would let you do sudo things more safely or if it’s a bit.
i’ve literally read the code and i still can’t imagine this would actually work for anything if you don’t even authenticate your root access. or is the bit that it’s the “bottom” sudo so it just asks for access and anything you’d actually need sudo access for, to which the OS says “…no”
It’s an incredibly secure solution to root access control. Every rejection is logged as well
The key part is the exec call at the end. One of the interesting things about the exec-family of system calls in UNIX is that it replaces the current process if it succeeds. This means that the function will never return unless some error happened, so the exec method always returns an error. This will make error handling happen properly and if things fail the process will exit with a non-zero error code:
Finished release [optimized] target(s) in 0.06s
Running `target/release/🥺 ls`
Error: Os { code: 1, kind: PermissionDenied, message: "Operation not permitted" }
Every time you run it, it spits out an error
🥺 ls
:bottom-speak: :speech-l:
PermissionDenied, message: "Operation not permitted"
:speech-r: :top-use-words:
That’s because the binary needs the right permissions. If it was root + setuid it should work on Unix.
lol, this is fucking hilarious. sad that i have literally zero people in my life that would understand this
If it is not a bit and they are suggesting Rust is safer in this instance, I am going to have to roll for psychic damage. I love Rust. Rust eliminates entire categories of memory and concurrency errors. Rust does not eliminate logical errors - the kind of mistakes you are going to make in cryptography and authentication schemes. Not to mention, Rust is an absolutely obnoxious dependency to pull for a sudo replacement.
If it’s a bit, it sure made a lot of people mad, so hats off I guess.
yeah same. it would genuinely be quicker for me to type the program into a new cargo project with a less :bottom-speak: name to see what it does than deal with whatever fucking build system waifuctl
is. i get the issues people have with sudo, but essentially none of that has to do with problems rust can solve.
edit: just tried it, i think it literally does nothing, at least on my machine. building it myself at least. maybe there’s some permissions wonkery it needs but i don’t care enough to actually download this nonsense.