[Rust Daily] 2023-09-03 sudo-rs: memory safety implementation of sudo and su

sudo-rs: memory-safe implementation of sudo and su

The sudo-rs project improves the security of raw sudo in the following ways:

  • Use a memory-safe language (Rust) because an estimated one-third of security vulnerabilities in original sudo are related to memory management issues.

  • Omit less commonly used features to reduce the attack surface.

  • Developed an extensive test suite and even successfully discovered vulnerabilities in raw sudo.

Blog: https://www.memorysafety.org/blog/sudo-first-stable-release/

GitHub: https://github.com/memorysafety/sudo-rs

avalanche-rs:Avalanche API/VM SDK

avalanche-rs is a crate collection that provides all the abstractions needed to develop Rust-based applications and VMs in the Avalanche ecosystem. It provides canonical type definitions for all the various Avalanche APIs, comparable to those in avalanchego, but for Rust developers.

Avalanche is an open source platform for building distributed applications in an interoperable, decentralized and highly scalable ecosystem. Relying on a unique and powerful consensus mechanism, Avalanche is the first ecosystem designed to adapt to the global financial scale and complete transactions almost instantly.

GitHub: https://github.com/ava-labs/avalanche-rs

redpen: another linter

The project objectives are as follows.

  • Has its own custom set of code inspections independent of Clippy to allow for different default settings.

  • As a testing platform for the stability of Rustc's internal API.

  • By providing its own API inside the compiler, it acts as a kind of buffer to avoid frequent rewriting of code inspection tools (this work has not yet started).

  • Quickly compile as part of CI so projects can write project-specific code checks.

GitHub: https://github.com/estebank/redpen

Satpaper: Satellite imagery on your desktop

Display near real-time satellite imagery on your desktop.

  • Several different satellites are available, covering most of the Earth - not just the Americas!

  • Works with any resolution monitor.

  • The size of the globe (relative to the height of the output image) is configurable.

GitHub: https://github.com/Colonial-Dev/satpaper

str0m: synchronous no I/O WebRTC

A synchronous WebRTC without I/O. The RTC instance itself does not perform any network communication. It has no internal threads or asynchronous tasks. All operations occur synchronously through calls to the public API.

"Sans I/O" means that when implementing certain functions or libraries, it does not involve any operations related to input and output, but only operates on bytes or text of data to improve code reusability and flexibility. This approach allows code using the library to be reused without being constrained by I/O decisions, and can be applied to a variety of I/O methods, including synchronous and asynchronous I/O. This concept is often used to discuss modularity and general design in programming.

Related documentation: https://sans-io.readthedocs.io/how-to-sans-io.html

GitHub: https://github.com/algesten/str0m

sd-req: SD requester

Stable Diffusion WebUI API requester, calls HTTP requests to the SD WebUI API to generate images from the command line. The endpoint, model to use, number of images to generate, txt2img configuration, etc. are all configurable.

GitHub: https://github.com/sorainnosia/sd-req/

WebSocket is the fastest implementation

This post measures the performance of wtx and other projects to determine which is faster. The results are shown below.

3d7f9071458b20de3a453ff73e3a9bd1.png

Blog: https://c410-f3r.github.io/thoughts/the-fastest-websocket-implementation/

GitHub: https://github.com/c410-f3r/regular-crates/tree/main/ws-bench


From Daily Team Leader Qin

Community learning exchange platform subscription:

  • Rustcc Forum: support rss

  • WeChat public account: Rust language Chinese community

Guess you like

Origin blog.csdn.net/u012067469/article/details/132680340