rust-cpp
runc
rust-cpp | runc | |
---|---|---|
11 | 32 | |
774 | 11,441 | |
- | 0.6% | |
3.6 | 9.3 | |
1 day ago | about 14 hours ago | |
Rust | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-cpp
-
Improving Interoperability Between Rust and C++
I am the current passive maintainer of the cpp crate: https://github.com/mystor/rust-cpp
-
Best practices in creating a Rust API for a C++ library? Seeking advice from those who've done it before.
I would like to utilize OMPL's functionality in Rust code, so I want to call into OMPL C++ code somehow in Rust. I've seen two (non-mutually-exclusive) options so far: - rust-cpp, which allows you to write C++ code in Rust within the cpp!() macro. - cxx, which allows you to define both sides of the FFI boundary manually (as opposed to bindgen's automatic generation).
-
Microsoft is rewriting core Windows libraries in Rust
There's also the cpp and cxx crates for doing C++/Rust interop, but they probably aren't appropriate to use in all cases. The C ABI is definitely the safest way to go unless you're really trying to marry Rust and C++ code bases, not just writing library bindings.
-
Zork++ reaches the v0.5.0, ...where the project has been [completely] rewritten in Rust
https://github.com/mystor/rust-cpp <- not a transpiler, but almost as good
-
US NGO Consumer Reports also reporting on C and C++ safety for product development.
Otherwise, C would never have achieved success in MS-DOS when all the stuff it was binding to at the time required blocks of inline assembly. (Crates like rust-cpp do exist, which allow "inline C++" in the same way that C++ allows inline assembly.)
-
Choosing language for a new project
Actually, you can make inline C++ macro in Rust. Similar unholy monstrosities exist for inline python, inline C, inline SQL, inline HTML,...
-
Tired of safe programming? Embed C directly in your Rust code
Here is a more serious project that allows to embed C++ code directly in your Rust code: https://github.com/mystor/rust-cpp
-
Hello, youki! Faster container runtime is written in Rust
Don't underestimate the power of procedural macros: https://github.com/mystor/rust-cpp
- Use a CPP library from Rust
-
Rust with C++?
Alright, thanks for all your ideas! I also found this mystor/rust-cpp, which apparently allows inline c++ as opposed to cxx. Having yet to try out any of these, I like the idea of inline code more. Thought now I feel I need to brush up my skills a bit more to try this stuff out.
runc
-
Nanos – A Unikernel
I can speak to this. Containers, and by extension k8s, break a well known security boundary that has existed for a very long time - whether you are using a real (hardware) server or a virtual machine on the cloud if you pop that instance/server generally speaking you only have access to that server. Yeh, you might find a db config with connection details if you landed on say a web app host but in general you still have to work to start popping the next N servers.
That's not the case when you are running in k8s and the last container breakout was just announced ~1 month ago: https://github.com/opencontainers/runc/security/advisories/G... .
At the end of the day it is simply not a security boundary. It can solve other problems but not security ones.
- Several container breakouts due to internally leaked fds
- Container breakout through process.cwd trickery and leaked fds
-
US Cybersecurity: The Urgent Need for Memory Safety in Software Products
It's interesting that, in light of things like this, you still see large software companies adding support for new components written in non-memory safe languages (e.g. C)
As an example Red Hat OpenShift added support for crun(https://github.com/containers/crun) this year(https://cloud.redhat.com/blog/whats-new-in-red-hat-openshift...), which is written in C as an alternative to runc, which is written in Go(https://github.com/opencontainers/runc)...
-
Run Firefox on ChromeOS
Rabbit hole indeed. That wasn't related to my job at the time, lol. The job change came with a company-provided computer and that put an end to the tinkering.
BTW, I found my hacks to make runc run on Chromebook: https://github.com/opencontainers/runc/compare/main...gabrys...
-
Crun: Fast and lightweight OCI runtime and C library for running containers
being the main author of crun, I can clarify that statement: I am not a fan of Go _for this particular use case_.
Using C instead of Go avoided a bunch of the workarounds that exists in runc to workaround the Go runtime, e.g. https://github.com/opencontainers/runc/blob/main/libcontaine...
-
Best virtualization solution with Ubuntu 22.04
runc
-
Bringing Memory Safety to sudo and su - with Ferrous Systems and Tweedegolf
Not OP, but if I had to guess, a lot of this can be picked up by just observing common security issues in the Linux space, since similar mistakes and oversights have caused quite a few real-world CVEs in the past, e.g. this random example of a TOCTTOU vulnerability in runc.
- Containers - entre historia y runtimes
- [email protected]+incompatible with ubuntu 22.04 on arm64 ?
What are some alternatives?
cxx - Safe interop between Rust and C++
crun - A fast and lightweight fully featured OCI runtime and C library for running containers
derive_more - Some more derive(Trait) options
Moby - The Moby Project - a collaborative project for the container ecosystem to assemble container-based systems
rust-ctor - Module initialization/global constructor functions for Rust
youki - A container runtime written in Rust
JavaCPP - The missing bridge between Java and native C++
podman - Podman: A tool for managing OCI containers and pods.
rust-derive-builder - derive builder implementation for rust structs
containerd - An open and reliable container runtime
rust-bindgen - Automatically generates Rust FFI bindings to C (and some C++) libraries.
conmon - An OCI container runtime monitor.