docs(daemon): tcpdump comparison for proto 28/29 daemon transfers (#1699)#3513
Merged
Conversation
1 task
oferchen
added a commit
that referenced
this pull request
May 1, 2026
…1697) (#3516) Adds wire-byte audit for server-side filter rules (filter / exclude / include / exclude from / include from in oc-rsyncd.conf module sections) during a pull. Headline finding: no active divergence today; daemon rules are applied process-locally and never serialised. Documents the load-bearing invariants and divergence sentinels. Companion to docs/audits/tcpdump-daemon-proto28-29.md (PR #3513) and docs/daemon/filter-precedence.md (PR #1888).
oferchen
added a commit
that referenced
this pull request
May 5, 2026
oferchen
added a commit
that referenced
this pull request
May 5, 2026
…1697) (#3516) Adds wire-byte audit for server-side filter rules (filter / exclude / include / exclude from / include from in oc-rsyncd.conf module sections) during a pull. Headline finding: no active divergence today; daemon rules are applied process-locally and never serialised. Documents the load-bearing invariants and divergence sentinels. Companion to docs/audits/tcpdump-daemon-proto28-29.md (PR #3513) and docs/daemon/filter-precedence.md (PR #1888).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds
docs/audits/tcpdump-daemon-proto28-29.md, a wire-level decode of an oc-rsync daemon session forced to protocol 28 or 29, comparing every byte against upstream rsync 3.4.1 forced to the same protocol.The audit covers: ASCII
@RSYNCD:greeting (with the no-digest-list rule for proto < 30), MOTD/module list framing, module selection, the argv block carrying the-e.capability string, the absence of any compat-flags varint (gated to proto >= 30), the legacyXFLG_OLD_PREFIXESfilter parser (proto < 29), fixed 4-byte LE file-list fields (uid/gid/mtime/mode/size), the absence of INC_RECURSE markers, and multiplex framing.It identifies five concrete divergence sentinels (greeting digest list, phantom compat_flags varint, varint-encoded uid/gid at proto < 30, streamed flist at proto < 30, modifier-prefix filter rules at proto 28) where any future regression would manifest as visible byte differences in tcpdump.
Complements the per-version capability matrix in PR #3512 (
docs/audits/protocol-28-32-interop-matrix.md), and notes the rsync 3.0.9 protocol-number comment discrepancy attools/ci/known_failures.conf:81already flagged indocs/audits/tcpdump-daemon-filter-pull.md.Guarantees:
path:line(oc-rsync and upstream rsync 3.4.1).docs/audits/tcpdump-daemon-filter-pull.md.Test plan