Announcement

Collapse
No announcement yet.

sudo & su Being Rewritten In Rust For Memory Safety

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by stormcrow View Post
    And yet a simple logic flow chart can often reveal fundamental logic errors with not a lot of effort when properly executed.
    And if that flowchart represents code that can be seen as an abstract state machine, then you can use the typestate pattern to teach the Rust compiler to enforce correct traversal of it, like with how Hyper turns the "Can't set header. Body has already begun streaming" error that PHP codebases occasionally throw when you accidentally have whitespace at the top of a source file into a compile-time error along the lines of "HttpResponse<BodyStreaming> has no method set_header".

    With C++, you can sort of implement it, but the lack of ownership and borrowing means you can't prevent code from holding and using references to states you've transitioned away from.

    Comment


    • #22
      Originally posted by unwind-protect View Post

      Good.
      Its good for companies, bad for the project. Compare BSDs with linux for eg. Former is used in many common commercial hardware like NAS, consoles, servers etc, but mostly with modifications and turned proprietary, and it is evident that it gets far less from the corporations that utilise it compared to linux for example. Over the long run, that made linux have better hardware support, faster development and more funding. Only cases where BSD licensed software projects survive are in cases where a lone corporation is in control of the same, and just has it to pool community support for cheap, like say chromium or darwin

      Comment


      • #23
        Originally posted by leo_sk View Post

        Its good for companies, bad for the project. Compare BSDs with linux for eg. Former is used in many common commercial hardware like NAS, consoles, servers etc, but mostly with modifications and turned proprietary, and it is evident that it gets far less from the corporations that utilise it compared to linux for example. Over the long run, that made linux have better hardware support, faster development and more funding. Only cases where BSD licensed software projects survive are in cases where a lone corporation is in control of the same, and just has it to pool community support for cheap, like say chromium or darwin
        Linux grew a little stronger than the BSDs after being introduced around the same time, true. But to attribute all that to the license is misguided.

        If you follow FreeBSD commits, there are plenty that have a "sponsored by" remark attached.

        Comment


        • #24
          For Memory Safety, Plus and Minus instructions on your CPU are being rewritten in Rust.

          Comment


          • #25
            What's the point of this project? We already have sudo written in rust
            please, sudo like program with regex support written in rust

            Comment


            • #26
              While we're doing all this foundational work...

              If we could get more robust formatting for /etc/sudoers , /etc/fstab , /etc/hosts and others -- that would be nice. I open a config file in Sublime, Vim and another editor and each has different formatting making editing more difficult. Parsing for use in scripts is also difficult and archaic when compared against things like $jq.

              And somebody please take a sledgehammer to Unix Octal Permissions -- they served their function for their time, but we could do better.

              Third gripe -- why should I need all these fancy Databases for data-storage? Can we ____please____ fix the Filesystem -- tools for accessing, sorting, ordering and returning data could be improved.

              I will personally pay money to yeet the 3 letter directory structure FHS into the trash. Why do we need to shoot ourselves in the balls adhering to obscurity back when people could type 10 words a minuet.

              Sane defaults. Sane planning. This is literally a new millennia.

              Comment


              • #27
                Originally posted by ssokolow View Post

                Funny you should say that. There was a RustConf 2022 talk named The Sheer Terror of PAM.
                Yeah, that's pretty much exactly what I expected. RIIR PAM with modules loaded using WASM?

                Comment


                • #28
                  <Sigh> Mature applications being rewritten in another language.... Seems like a waste of resources. Strange way to move 'forward'. When the next 'highly toted' language arrives say 'RustAwesoooome' will we rewrite it again, and again, and again????


                  Why not let the Rust guys just write an AwesomeOS from the ground up? Then they'll be very happy to write all the memory safe code they want and let the rest of us get on with real work . When they are ready with a decent kernel, tools, DEs in a few years we can switch over to all the glorious AwesomeOS that will never have a memory problem and will be correctly written by all the wonderful Rust programmers out there and never see a virus, errors, or any problems ever again. Seems like a winner. Then they don't have to taint the current Linux Kernel with their high expectations and goals . They'll have it all in the AwesomeOS. No assembly, no pascal, no c, and especially no c++ ... just pure Rust applications allowed on the system. Seems 'reasonable' Ha!
                  Last edited by rclark; 29 April 2023, 04:36 PM.

                  Comment


                  • #29
                    In other words, the cargo cultâ„¢ behaves like a cult.

                    Comment


                    • #30
                      Originally posted by rclark View Post
                      <Sigh> Mature applications being rewritten in another language.... Seems like a waste of resources. Strange way to move 'forward'. When the next 'highly toted' language arrives say 'RustAwesoooome' will we rewrite it again, and again, and again????


                      Why not let the Rust guys just write an AwesomeOS from the ground up? Then they'll be very happy to write all the memory safe code they want and let the rest of us get on with real work . When they are ready with a decent kernel, tools, DEs in a few years we can switch over to all the glorious AwesomeOS that will never have a memory problem and will be correctly written by all the wonderful Rust programmers out there and never see a virus, errors, or any problems ever again. Seems like a winner. Then they don't have to taint the current Linux Kernel with their high expectations and goals . They'll have it all in the AwesomeOS. No assembly, no pascal, no c, and especially no c++ ... just pure Rust applications allowed on the system. Seems 'reasonable' Ha!
                      This gatekeeping argument makes absolutely no sense to me, if people want to invest in time and resources into something they want then let them. Nature will take care of what's wasted and not. It's not like a team from Ferrous Systems and Tweede Golf backing from AWS takes resources from the Linux ecosystem. If it fails then the idea failed, no harm to any other Linux specific project. Competition breeds innovation (among other things) after all.

                      Comment

                      Working...
                      X