惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog
Microsoft Azure Blog
Microsoft Azure Blog
I
InfoQ
Microsoft Security Blog
Microsoft Security Blog
N
Netflix TechBlog - Medium
G
Google Developers Blog
L
LangChain Blog
腾讯CDC
大猫的无限游戏
大猫的无限游戏
U
Unit 42
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
The GitHub Blog
The GitHub Blog
博客园_首页
GbyAI
GbyAI

The Rust Programming Language Forum - Latest topics

Beginner building a Rust backend framework (AI-assisted) — feedback appreciated C++ to Rust -- Exceptions Re-exporting a trait with a custom derive_macro Gold linker is deprecated Why is using PhantomData valid in this case? Code review for Static Pool Allocator Looking for a pool based allocator Why is this legal? What does it mean for Rustc to run "out of TLS keys"? Using async/await internally with no internal runtime, but exposing a nonblocking poll API — is this a reasonable design? Testing functions that use randomness `cargo-path`: improve coding agents&#39; ability to find Rust documentation Rust task runners Lifetime weird case Windows - USB device not detected A random rustc-ice-[...].txt file appeared Develop rust where the environment is setup in a docker Undefined Behavior: in-bounds pointer arithmetic failed: attempting to offset pointer by 20 bytes, but got alloc238 which is only 1 byte from the end of the allocation Unbug 0.5 - Runtime debug assertions Is there a tiny error in section 6.2 Reference types? Lifetime woes implementing ratatui::Widget for a reference Rusqlite + Chrono: How do I simplify code to obtain chrono datetime value From OOP to Rust – struggling with code organization and data structure design Way to avoid a self-referential struct Rust RF and audio resources/communities Whyhttp - HTTP mocks that fail where the bug actually is Using tokio channel permits in a tower service Arc::increment_strong_count design question (cross-post) `&T`, `&mut T`, `Pin<&mut T>` and `&Cell<T>`: Ways of Borrowing a `T` Ratatui detect arrow key press and release
Celerity 0.1.1: pure Rust ZMTP 3.1 with a sans-IO core, T...
Torga · 2026-04-20 · via The Rust Programming Language Forum - Latest topics
Hi all, I’ve been working on celerity , a pure Rust implementation of ZMTP 3.1 for guys who want ZeroMQ-style messaging semantics without really depending on libzmq . The main design choice is that the protocol engine is sans-IO. CelerityPeer owns greeting, handshake, framing, multipart assembly, and security state, while the optional Tokio layer handles TCP and Unix domain sockets. That split kept the wire protocol testable in isolation and kept transport issues separate from protocol state. Current scope: ZMTP 3.1 greeting, handshake, framing, and multipart messages PUB/SUB and REQ/REP Tokio transport wrappers for TCP and Unix sockets CURVE-RS for authenticated/encrypted non-local links a small cel-cat CLI for local smoke testing A few implementation details: Security is scope-aware: loopback TCP and IPC default to NULL for local workflows, while non-local links fail closed unless CURVE is configured or insecure NULL is explicitly enabled. The CURVE-RS path uses X25519 key agreement, HKDF-SHA256 for derivation, and ChaCha20-Poly1305 for traffic protection. High-water mark configuration supports either backpressure or DropNewest behavior. Handshake metadata is case-insensitive on lookup while preserving original bytes on the wire. The API currently has two layers: low-level: CelerityPeer as a protocol state machine higher-level: celerity::io with Tokio adapters and helpers like PubSocket , SubSocket , ReqSocket , and RepSocket I’ve been validating it with cargo test --all-features ; the current test matrix covers handshake edge cases, CURVE flows, IPC authorization checks, queue policy behavior, and end-to-end Tokio socket roundtrips. I’d be interested in feedback on: the sans-IO API shape the local vs non-local security defaults missing ZMTP patterns or interoperability cases worth prioritizing next I'm open to any other suggestions Repo: GitHub - ShemShadrack/celerity: Pure Rust sans-IO ZMTP 3.1 engine with Tokio TCP/IPC transport and CURVE-RS · GitHub 1 post - 1 participant Read full topic