#289 checksum/compression: - -c/--checksum now implies the incremental content quick-check (without implying -t), so an unchanged file is skipped like rsync. - --checksum-choice/--cc accepts xxh64/xxhash, xxh3, xxh128, md5 and auto; md4/sha1/none and the two-name form are rejected by name. - --compress-choice/--zc rejects lz4/zlib/zlibx by name (zstd/none/auto kept). - --checksum-seed=0 is randomized per transfer and sent on the wire. - --skip-compress uses rsync 3.4.1's default suffix list; slash separators and dot-less suffixes are accepted. - add --no-whole-file. #295 timeouts/alloc/temp-dir: - --timeout default 0 (disabled), --contimeout default 60; 0 disables both, plus --no-timeout/--no-contimeout. - --max-alloc=0 means no allocation limit (was rejected). - --temp-dir accepts any dir, requires it to exist, and falls back to a non-atomic copy on EXDEV instead of aborting. #296 connectivity/daemon: - -M/--remote-option is rejected for daemon/TCP destinations (SSH-only). - --trust-sender clarified as receiver-local; server-path tests added. - --stop-at accepts rsync's full date form (y-m-dTh:m etc.). Adds unit and integration coverage; no wire-field change, PROTOCOL_VERSION stays 2.22.0.
This commit is contained in:
+3
-2
@@ -2899,13 +2899,14 @@ static void test_config_wire_receive_bounds() {
|
||||
/* BOOL: only 0/1 is a legal wire value. */
|
||||
EXPECT_TRUE(receive_hand_built_frame_rejected(write_frame_with_invalid_bool));
|
||||
|
||||
/* RAW_MAXALLOC: zero is rejected before it can become the session ceiling. */
|
||||
/* RAW_MAXALLOC: zero is rsync's --max-alloc=0 "no limit" and round-trips;
|
||||
* only the over-ceiling clamp is applied server-side. */
|
||||
Config* c = config_create();
|
||||
EXPECT_NOT_NULL(c);
|
||||
c->send_directory = str_dup("/src");
|
||||
c->receive_root_directory = str_dup("/dst");
|
||||
c->max_alloc = 0;
|
||||
EXPECT_TRUE(roundtrip_config_rejected(c));
|
||||
EXPECT_FALSE(roundtrip_config_rejected(c));
|
||||
config_delete(c);
|
||||
|
||||
/* STR_MODULE: a name outside [A-Za-z0-9._-] is refused. */
|
||||
|
||||
Reference in New Issue
Block a user