aerorsync
Native Rust implementation of the rsync wire protocol 31.
Status — reserved namespace
This crate is currently a reserved placeholder. The 0.0.x series
secures the aerorsync name on crates.io while the implementation
matures inside AeroFTP, where
it ships as a first-class component of the Aero family (working module
at src-tauri/src/aerorsync/).
A first usable public API will land once wire-level parity with stock
rsync --server is proven end-to-end. Until then this crate exports no
public items.
Target scope
- rsync wire protocol 31 over SSH remote-shell
- single-file delta transfer via xxh128 file-level checksum and classic
sum_head/sum_blocksignature phase - byte-level parity with stock
rsync 3.2.x/3.4.x
Explicitly out of scope for the initial milestones: recursive tree sync, symlink / hardlink, xattrs, ACL, session reuse, daemon mode.
Licensing
GPL-3.0-only. Clean-room Rust reimplementation — no rsync source code is included in this crate. The rsync wire protocol (bytes on wire, handshake sequence, file-list format) is an interface specification and not copyrightable subject matter (Sega v. Accolade, Oracle v. Google).
Precedent of independent rsync-named clean-room reimplementations in
different languages: OpenBSD's openrsync
(2019→, BSD-licensed, default on OpenBSD).
The upstream rsync project (rsync.samba.org) is GPL-3.0-or-later and is acknowledged as the protocol reference; no affiliation or endorsement is claimed.
Sibling crates in the Aero family
aerovault— encrypted vault format (AES-256-GCM-SIV / Argon2id / AES-KW / HMAC-SHA512)
Contact
AXP Development Lab — dev@axpdev.it