Skip to content

docs(rsync_io): audit SSH cipher-level compression detection (#2046)#3506

Merged
oferchen merged 2 commits into
masterfrom
feat/ssh-cipher-compression-audit-2046
May 1, 2026
Merged

docs(rsync_io): audit SSH cipher-level compression detection (#2046)#3506
oferchen merged 2 commits into
masterfrom
feat/ssh-cipher-compression-audit-2046

Conversation

@oferchen
Copy link
Copy Markdown
Owner

@oferchen oferchen commented May 1, 2026

Summary

  • Phase-1 audit only at docs/audits/ssh-cipher-compression.md. No Rust, no Cargo.toml, no flag wiring.
  • Surveys the SSH transport in crates/rsync_io/src/ssh/ and the --compress CLI plumbing in crates/cli/...connection_and_logging_options.rs, then catalogs three detection signals available at command-build time: -C / -oCompression=yes in argv, ssh -G HOST resolved config, and cipher-implied compression (none in modern OpenSSH).
  • Recommends Phase 2: passive detection plus --compress-warn-double (default on) wired into build_ssh_connection in crates/core/src/client/remote/ssh_transfer.rs. Phase 3 (opt-in --compress-on-double=auto|force|off) deferred until benchmarks justify changing transfer semantics.

Test plan

  • No code changes; CI must pass docs lint and link checks.
  • No em-dashes, no placeholders, no todo!/FIXME.
  • All cited file paths and symbols verified against master commit 83c8aa4.
  • Length 380 lines, within 250-400 target.

oferchen added 2 commits May 1, 2026 11:35
Phase-1 audit only. Surveys the existing SSH transport surface in
crates/rsync_io/src/ssh and the --compress CLI plumbing, catalogs the
detection signals available at command-build time (argv -C / -o
Compression=yes, ssh -G HOST output, cipher-implied compression), and
proposes a phased plan for emitting a stderr warning when SSH and rsync
would double-compress the same byte stream. No code or Cargo.toml
changes; the recommended Phase 2 wiring point is build_ssh_connection
in crates/core/src/client/remote/ssh_transfer.rs.
@oferchen oferchen merged commit b913c5b into master May 1, 2026
10 checks passed
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 1, 2026
@oferchen oferchen deleted the feat/ssh-cipher-compression-audit-2046 branch May 1, 2026 21:08
oferchen added a commit that referenced this pull request May 5, 2026
…3506)

Phase-1 audit only. Surveys the existing SSH transport surface in
crates/rsync_io/src/ssh and the --compress CLI plumbing, catalogs the
detection signals available at command-build time (argv -C / -o
Compression=yes, ssh -G HOST output, cipher-implied compression), and
proposes a phased plan for emitting a stderr warning when SSH and rsync
would double-compress the same byte stream. No code or Cargo.toml
changes; the recommended Phase 2 wiring point is build_ssh_connection
in crates/core/src/client/remote/ssh_transfer.rs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant