An open source utility that provides fast incremental file transfer. It also has useful features for backup and restore operations among many other use cases.
This report summarizes scanner evidence for RsyncProject/rsync, a C project with 5,279 GitHub stars. SynthScan examined 145,279 lines of code across 592 source files, recording 772 pattern matches distributed across 15 syntactic categories. The legacy adjusted pattern signal is 11.4 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 387 finding(s).
Are imports declared and package/API names verified? 151 finding(s).
Are wrappers, guards, and repeated structures necessary? 244 finding(s).
Which changes need focused human review? 772 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 772 distinct pattern matches across 15 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | runtests.py | 162 | except (FileNotFoundError, subprocess.TimeoutExpired): | CODE |
| HIGH | runtests.py | 177 | except FileNotFoundError: | CODE |
| HIGH | runtests.py | 194 | except FileNotFoundError: | CODE |
| HIGH | runtests.py | 226 | except OSError: | CODE |
| HIGH | runtests.py | 242 | except OSError: | CODE |
| HIGH | runtests.py | 627 | except FileNotFoundError: | CODE |
| HIGH | runtests.py | 205 | except subprocess.CalledProcessError: | CODE |
| HIGH | runtests.py | 645 | except FileNotFoundError: | CODE |
| HIGH | runtests.py | 959 | except FileNotFoundError: | CODE |
| HIGH | testsuite/rsync_proto.py | 701 | except (ProtocolError, socket.timeout, OSError): | CODE |
| HIGH | testsuite/rsync_proto.py | 869 | except (ProtocolError, socket.timeout, OSError): | CODE |
| HIGH | testsuite/rsync_proto.py | 936 | except socket.timeout: | CODE |
| HIGH | testsuite/rsync_proto.py | 943 | except OSError: | CODE |
| HIGH | testsuite/rsync_proto.py | 1066 | except (OSError, ProtocolError): | CODE |
| HIGH | testsuite/rsync_proto.py | 1072 | except OSError: | CODE |
| HIGH | testsuite/copy-xattrs-symlink-race_test.py | 112 | except OSError: | CODE |
| HIGH | testsuite/copy-xattrs-symlink-race_test.py | 143 | except OSError: | CODE |
| HIGH | testsuite/preallocate_test.py | 90 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 304 | except (OSError, struct.error): | CODE |
| HIGH | testsuite/rsyncfns.py | 323 | except (OSError, struct.error): | CODE |
| HIGH | testsuite/rsyncfns.py | 631 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 739 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 265 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 309 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 1227 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 417 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 486 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 655 | except (OSError, subprocess.SubprocessError): | CODE |
| HIGH | testsuite/rsyncfns.py | 679 | except ValueError: | CODE |
| HIGH | testsuite/rsyncfns.py | 736 | except (subprocess.TimeoutExpired, OSError): | CODE |
| HIGH | testsuite/rsyncfns.py | 2741 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 2766 | except OSError: | CODE |
| HIGH | testsuite/rsyncfns.py | 2780 | except OSError: | CODE |
| HIGH | testsuite/daemon-proxy-protocol_test.py | 138 | except OSError: | CODE |
| HIGH | testsuite/daemon-proxy-protocol_test.py | 128 | except OSError: | CODE |
| HIGH | testsuite/files-from-leak_test.py | 98 | except OSError: | CODE |
| HIGH | testsuite/daemon-argv-limit_test.py | 39 | except (ConnectionResetError, BrokenPipeError): | CODE |
| HIGH | testsuite/daemon-http-proxy_test.py | 78 | except OSError: | CODE |
| HIGH | testsuite/proto-parent-ndx-empty-dirflist_test.py | 84 | except (OSError, rp.ProtocolError): | CODE |
| HIGH | testsuite/abdiff.py | 522 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 534 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 686 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 1230 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 1236 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 1241 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 1518 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 2320 | except OSError: | CODE |
| HIGH | testsuite/abdiff.py | 110 | except OSError: | CODE |
| HIGH | testsuite/rename-fullpath-symlink-race_test.py | 94 | except OSError: | CODE |
| HIGH | testsuite/perftest.py | 165 | except OSError: | CODE |
| HIGH | testsuite/perftest.py | 215 | except OSError: | CODE |
| HIGH | testsuite/perftest.py | 200 | except OSError: | CODE |
| HIGH | testsuite/perftest.py | 498 | except OSError: | CODE |
| HIGH | testsuite/proxy-host-crlf_test.py | 55 | except socket.timeout: | CODE |
| HIGH | testsuite/proxy-host-crlf_test.py | 52 | except socket.timeout: | CODE |
| HIGH | testsuite/dir-sgid_test.py | 74 | except FileNotFoundError: | CODE |
| HIGH | testsuite/rrsync-sender-leaf-flip_test.py | 83 | except (OSError, UnicodeDecodeError): | CODE |
| HIGH | testsuite/recv-discard-nullderef_test.py | 89 | except OSError: | CODE |
| HIGH | testsuite/output-control-chars_test.py | 81 | except OSError: | CODE |
| HIGH | testsuite/copy-dest-symlink-readleak_test.py | 72 | except OSError: | CODE |
| 26 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | errcode.h | 21 | /* If you change these, please also update the string mappings in log.c and | COMMENT |
| LOW | errcode.h | 61 | #define RERR_CMD_FAILED 124 | COMMENT |
| LOW | version.h | 1 | #define RSYNC_VERSION "3.5.1" | COMMENT |
| LOW | loadparm.c | 101 | #endif | COMMENT |
| LOW | loadparm.c | 121 | { LOG_MAIL, "mail" }, | COMMENT |
| LOW | loadparm.c | 141 | #ifdef LOG_LOCAL1 | COMMENT |
| LOW | io.c | 201 | #define IOBUF_RESTORE_SIZE(siz) (((siz) | 0xFF) + 1) | COMMENT |
| LOW | rsync.h | 21 | #define False 0 | COMMENT |
| LOW | rsync.h | 41 | /* a non-zero CHAR_OFFSET makes the rolling sum stronger, but is | COMMENT |
| LOW | rsync.h | 61 | #define XMIT_USER_NAME_FOLLOWS (1<<10) /* protocols 30 - now */ | COMMENT |
| LOW | rsync.h | 81 | #define FLAG_CONTENT_DIR (1<<2) /* sender/receiver/generator */ | COMMENT |
| LOW | rsync.h | 141 | * MAX_PROTOCOL_VERSION: either to allow new major-rev versions that | COMMENT |
| LOW | rsync.h | 201 | COMMENT | |
| LOW | rsync.h | 221 | COMMENT | |
| LOW | rsync.h | 241 | #define FNAMECMP_FUZZY 0x83 | COMMENT |
| LOW | rsync.h | 261 | #define ITEM_MISSING_DATA (1<<16) /* used by log_formatted() */ | COMMENT |
| LOW | rsync.h | 321 | /* For calling delete_item() and delete_dir_contents(). */ | COMMENT |
| LOW | rsync.h | 341 | COMMENT | |
| LOW | rsync.h | 361 | # include <stddef.h> | COMMENT |
| LOW | rsync.h | 381 | #endif | COMMENT |
| LOW | rsync.h | 401 | #ifdef HAVE_SYS_TIME_H | COMMENT |
| LOW | rsync.h | 421 | COMMENT | |
| LOW | rsync.h | 441 | # define NOFOLLOW_HIT_SYMLINK(e) ((e) == ELOOP || (e) == EMLINK) | COMMENT |
| LOW | rsync.h | 461 | #define CAN_SET_NSEC 1 | COMMENT |
| LOW | rsync.h | 481 | #ifdef HAVE_SYS_MODE_H | COMMENT |
| LOW | rsync.h | 501 | #endif | COMMENT |
| LOW | rsync.h | 521 | # define makedev mkdev | COMMENT |
| LOW | rsync.h | 541 | # include <floss.h(floss_getpwuid,floss_select,floss_seteuid)> | COMMENT |
| LOW | rsync.h | 561 | #else | COMMENT |
| LOW | rsync.h | 581 | #ifndef HAVE_PID_T | COMMENT |
| LOW | rsync.h | 601 | COMMENT | |
| LOW | rsync.h | 621 | #endif | COMMENT |
| LOW | rsync.h | 641 | # define SIZEOF_INT32 4 | COMMENT |
| LOW | rsync.h | 661 | #ifndef uint32 | COMMENT |
| LOW | rsync.h | 681 | * that's the maximum size the file system can handle and there is no | COMMENT |
| LOW | rsync.h | 701 | #elif SIZEOF_OFF_T == 8 | COMMENT |
| LOW | rsync.h | 741 | #define HT_NODE(tbl, bkts, i) ((void*)((char*)(bkts) + (size_t)(i)*(tbl)->node_size)) | COMMENT |
| LOW | rsync.h | 761 | #ifndef MAXPATHLEN | COMMENT |
| LOW | rsync.h | 781 | #ifndef INADDR_NONE | COMMENT |
| LOW | rsync.h | 801 | #define PREALLOCATE_NEEDS_TRUNCATE 1 | COMMENT |
| LOW | rsync.h | 861 | extern int pathname_ndx; | COMMENT |
| LOW | rsync.h | 881 | #define OPT_EXTRA(f,bump) ((union file_extras*)(f) - file_extra_cnt - 1 - (bump)) | COMMENT |
| LOW | rsync.h | 901 | #define F_MOD_NSEC(f) OPT_EXTRA(f, 0)->unum | COMMENT |
| LOW | rsync.h | 921 | #define F_XATTR(f) REQ_EXTRA(f, xattrs_ndx)->num | COMMENT |
| LOW | rsync.h | 941 | #define F_SUM(f) ((char*)OPT_EXTRA(f, START_BUMP(f) + HLINK_BUMP(f) \ | COMMENT |
| LOW | rsync.h | 1041 | #define FILTRULE_DIRECTORY (1<<6) /* this matches only directories */ | COMMENT |
| LOW | rsync.h | 1121 | size_t len; /* len = chars following pos */ | COMMENT |
| LOW | rsync.h | 1141 | #define MPLX_TO_BUFFERED 2 | COMMENT |
| LOW | rsync.h | 1161 | COMMENT | |
| LOW | rsync.h | 1201 | #endif | COMMENT |
| LOW | rsync.h | 1241 | #include "proto.h" | COMMENT |
| LOW | rsync.h | 1261 | int vsnprintf(char *str, size_t count, const char *fmt, va_list args); | COMMENT |
| LOW | rsync.h | 1281 | #endif | COMMENT |
| LOW | rsync.h | 1301 | #define EWOULDBLOCK EAGAIN | COMMENT |
| LOW | rsync.h | 1321 | #define S_IWUSR 0200 | COMMENT |
| LOW | rsync.h | 1341 | COMMENT | |
| LOW | rsync.h | 1361 | COMMENT | |
| LOW | rsync.h | 1381 | #elif defined SYSV | COMMENT |
| LOW | rsync.h | 1401 | #define INITACCESSPERMS 0700 | COMMENT |
| LOW | rsync.h | 1441 | #endif | COMMENT |
| 248 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | testsuite/xrsync.py | 108 | c.push(files) | CODE |
| HIGH | testsuite/rsyncfns.py | 1104 | if (errno == ENOSYS || errno == EINVAL || errno == EOPNOTSUPP) | CODE |
| HIGH | testsuite/rsyncfns.py | 1134 | while (getppid() == parent && mono() < deadline) | CODE |
| HIGH | testsuite/fake-super-backup-fifo-regression_test.py | 71 | return oldname && newname && strcmp(oldname, "victim") == 0 | CODE |
| HIGH | testsuite/pseudo-paths_test.py | 29 | [bash, '-c', 'echo "probe" > >(cat > /dev/null)'], | CODE |
| HIGH | testsuite/daemon-leaf-type-race-fchmod_test.py | 123 | int ok = fd >= 0 && write(fd, &byte, 1) == 1; | CODE |
| HIGH | testsuite/daemon-leaf-type-race-fchmod_test.py | 135 | int ok = fd >= 0 && read(fd, &byte, 1) == 1 && byte == 'D'; | CODE |
| HIGH | testsuite/daemon-leaf-type-race-fchmod_test.py | 152 | if (!ready || !done || send_ready(ready) < 0 || await_done(done) < 0) { | CODE |
| HIGH | testsuite/daemon-leaf-type-race-fchmod_test.py | 174 | if (!synchronizing && rc < 0 && (flags & O_DIRECTORY) && leaf | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 75 | return wanted && fcntl(fd, F_GETPATH, path) == 0 | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 83 | if (swapped && partial && held) { | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 108 | if (!swapped && path && strcmp(path, "victim") == 0 | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 111 | if (rename(partial, held) == 0 && symlink("secret", partial) == 0) { | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 126 | if (swapped && fd >= 0 && path && strcmp(path, "victim") == 0 | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 153 | if (!swapped && path && strstr(path, "pdir/victim") | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 155 | if (rename(partial, held) == 0 && symlink("secret", partial) == 0) { | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 171 | if (swapped && fd >= 0 && path && strstr(path, "pdir/victim") | CODE |
| HIGH | …stsuite/partial-protected-regular-retry-policy_test.py | 186 | if (rc == 0 && swapped && path && strcmp(path, "pdir") == 0 | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 126 | if (!wanted || fd < 0) | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 140 | if (swapped && partial && held) { | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 153 | if (partial && held && rename(partial, held) == 0 | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 178 | return path && strcmp(path, "victim") == 0 | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 199 | if (!swapped && is_victim_write(path, flags) && (flags & O_CREAT) | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 212 | if (swapped && fd >= 0 && is_victim_write(path, flags) | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 235 | if (!swapped && path && strstr(path, "pdir/victim") | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 247 | if (swapped && fd >= 0 && path && strstr(path, "pdir/victim") | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 304 | if (rc == 0 && swapped && path && strcmp(path, "pdir") == 0 | CODE |
| HIGH | testsuite/partial-protected-regular-retry-linux_test.py | 349 | if (rc == 0 && swapped && path && strcmp(path, "pdir") == 0 | CODE |
| HIGH | testsuite/proto-hlink-flag-oob_test.py | 57 | # daemon's stderr to /dev/null). The daemon inherits this env. | STRING |
| HIGH⚡ | testsuite/fleettest.py | 257 | # command execution (ssh for remote, local shell when ssh_host is null) | COMMENT |
| HIGH⚡ | testsuite/fleettest.py | 1053 | command -v taskkill >/dev/null 2>&1 || return 0 | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1054 | command -v ps >/dev/null 2>&1 || return 0 | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1055 | for p in $(pgrep -f "$1" 2>/dev/null); do | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1061 | command -v pgrep >/dev/null 2>&1 || return 0 | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1063 | [ "$before" -gt 0 ] 2>/dev/null || return 0 | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1067 | if [ "$(pgrep -f "$2" 2>/dev/null | wc -l | tr -d ' ')" -gt 0 ] 2>/dev/null; then | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1073 | [ "$killed" -gt 0 ] 2>/dev/null && echo "KILLED $killed stray $1(s)" | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1074 | if [ "$after" -gt 0 ] 2>/dev/null; then | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1084 | if rm -rf -- "$d" 2>/dev/null || sudo -n rm -rf -- "$d" 2>/dev/null; then | CODE |
| HIGH⚡ | testsuite/fleettest.py | 1084 | if rm -rf -- "$d" 2>/dev/null || sudo -n rm -rf -- "$d" 2>/dev/null; then | CODE |
| HIGH | testsuite/fleettest.py | 434 | f'{t.make} -j{t.pipe_jobs} check-progs || exit 5\n' | CODE |
| HIGH⚡ | testsuite/batch-file-symlink_test.py | 191 | # on every platform. A hardcoded makedev(1, 3) is only Linux's /dev/null; | COMMENT |
| HIGH | testsuite/ki62-io-error-mask_test.py | 5 | # Without masking, a malicious peer could set arbitrary (undefined) bits, which | COMMENT |
| HIGH | testsuite/pseudo-paths-daemon_test.py | 27 | probe_bash = subprocess.run([bash, '-c', 'echo "probe" > >(cat > /dev/null)'], env=bash_env, capture_output=True) | CODE |
| HIGH | testsuite/source-change-size-continues_test.py | 109 | if (truncate(target_path, 0) == 0 && mark && *mark) { | CODE |
| HIGH | testsuite/link-dest-symlink-enotsup_test.py | 73 | if (e && strcmp(e, "EPERM") == 0) | CODE |
| HIGH | testsuite/link-dest-symlink-enotsup_test.py | 75 | if (e && strcmp(e, "ENOSYS") == 0) | CODE |
| HIGH | testsuite/daemon-chroot-munge-default_test.py | 15 | munge_symlinks default = !use_chroot || module_dirlen | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | testsuite/rsync_proto.py | 36 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 38 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 100 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 102 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 270 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 272 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 388 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/rsync_proto.py | 390 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 44 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 136 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 270 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 495 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 544 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/abdiff.py | 715 | # =========================================================================== | COMMENT |
| MEDIUM | testsuite/abdiff.py | 722 | # =========================================================================== | COMMENT |
| MEDIUM | testsuite/abdiff.py | 2475 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 47 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 49 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 229 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 231 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 322 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 324 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 390 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/perftest.py | 392 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 168 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 170 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 192 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 194 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 325 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 327 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 52 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 54 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 90 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 92 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 146 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 148 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 228 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 230 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 300 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/pseudo-paths_test.py | 302 | # ------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/log-file-symlink_test.py | 69 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/log-file-symlink_test.py | 71 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/log-file-symlink_test.py | 97 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/log-file-symlink_test.py | 99 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 60 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 62 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 81 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 84 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 99 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/ki72-safe-links-backup_test.py | 103 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/excludefrom-symlink_test.py | 83 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/excludefrom-symlink_test.py | 85 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/excludefrom-symlink_test.py | 100 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/excludefrom-symlink_test.py | 102 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/fleettest.py | 256 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/fleettest.py | 258 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/fleettest.py | 977 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | testsuite/fleettest.py | 979 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/fleettest.py | 303 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | testsuite/fleettest.py | 305 | # --------------------------------------------------------------------------- | COMMENT |
| 32 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | testsuite/match-want-i-nolen_test.py | 0 | \ pid file = {scratchdir}/readargs-rsyncd.pid use chroot = no [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/match-append-empty-nullmap_test.py | 0 | \ pid file = {scratchdir}/readargs-rsyncd.pid use chroot = no [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/io-noop-flood-recursion_test.py | 0 | \ pid file = {scratchdir}/readargs-rsyncd.pid use chroot = no [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-hlink-flag-oob_test.py | 0 | \ pid file = {scratchdir}/readargs-rsyncd.pid use chroot = no [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/io-readargs-argv-nullwrite_test.py | 0 | \ pid file = {scratchdir}/readargs-rsyncd.pid use chroot = no [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/daemon-deny-dns-failopen_test.py | 0 | return rsync's exit code for listing the module over the daemon. | STRING |
| HIGH | testsuite/daemon-access-idn_test.py | 0 | return rsync's exit code for listing the module over the daemon. | STRING |
| HIGH | testsuite/daemon-access-ip_test.py | 0 | return rsync's exit code for listing the module over the daemon. | STRING |
| HIGH | testsuite/proto-cleared-ndx_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-parent-ndx-empty-dirflist_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-sender-selftest_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-msg-info-assert_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-subflist-freed_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-hlink-gnum_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/proto-cleared-dirflist_test.py | 0 | \ pid file = {scratchdir}/cd-rsyncd.pid use chroot = no log file = {log} [mod] path = {mod} read only = no | STRING |
| HIGH | testsuite/files-from-leak_test.py | 0 | reset the workspace. call only while the flipper is stopped. | STRING |
| HIGH | testsuite/filter-leak_test.py | 0 | reset the workspace. call only while the flipper is stopped. | STRING |
| HIGH | testsuite/operator-path-backup-symlink_test.py | 0 | reset the workspace. call only while the flipper is stopped. | STRING |
| HIGH | testsuite/operator-path-backup-rmdir_test.py | 0 | reset the workspace. call only while the flipper is stopped. | STRING |
| HIGH | testsuite/daemon-scan-cwd-desync_test.py | 0 | \ pid file = {base}/rsyncd.pid use chroot = no {ids} log file = {base}/rsyncd.log [m] path = {mod} read only = yes | STRING |
| HIGH | testsuite/daemon-copy-links-symlink_test.py | 0 | \ pid file = {base}/rsyncd.pid use chroot = no {ids} log file = {base}/rsyncd.log [m] path = {mod} read only = yes | STRING |
| HIGH | testsuite/daemon-scan-dir-escape_test.py | 0 | \ pid file = {base}/rsyncd.pid use chroot = no {ids} log file = {base}/rsyncd.log [m] path = {mod} read only = yes | STRING |
| HIGH | testsuite/daemon-subdir-climb-symlink_test.py | 0 | \ pid file = {base}/rsyncd.pid use chroot = no {ids} log file = {base}/rsyncd.log [m] path = {mod} read only = yes | STRING |
| HIGH | testsuite/README.md | 0 | \ pid file = {base}/rsyncd.pid use chroot = no {ids} log file = {base}/rsyncd.log [m] path = {mod} read only = yes | STRING |
| HIGH | testsuite/copy-dest-source-symlink_test.py | 0 | \ use chroot = no log file = {scratchdir}/rsyncd.log [upload] path = {mod} use chroot = no read only = no | STRING |
| HIGH | testsuite/acl-symlink-race_test.py | 0 | \ use chroot = no log file = {scratchdir}/rsyncd.log [upload] path = {mod} use chroot = no read only = no | STRING |
| HIGH | testsuite/sender-flist-symlink-leak_test.py | 0 | \ use chroot = no log file = {scratchdir}/rsyncd.log [upload] path = {mod} use chroot = no read only = no | STRING |
| HIGH | testsuite/alt-dest-symlink-race_test.py | 0 | \ use chroot = no log file = {scratchdir}/rsyncd.log [upload] path = {mod} use chroot = no read only = no | STRING |
| HIGH | testsuite/chdir-symlink-race_test.py | 0 | \ use chroot = no log file = {scratchdir}/rsyncd.log [upload] path = {mod} use chroot = no read only = no | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packaging/release.py | 19 | CODE | |
| LOW | packaging/release.py | 24 | CODE | |
| LOW | packaging/release.py | 24 | CODE | |
| LOW | packaging/release.py | 24 | CODE | |
| LOW | testsuite/filter-depth_test.py | 11 | CODE | |
| LOW | testsuite/filter-depth_test.py | 13 | CODE | |
| LOW | testsuite/metadata-depth_test.py | 13 | CODE | |
| LOW | testsuite/exclude_test.py | 17 | CODE | |
| LOW | testsuite/exclude_test.py | 17 | CODE | |
| LOW | testsuite/exclude_test.py | 17 | CODE | |
| LOW | testsuite/exclude_test.py | 17 | CODE | |
| LOW | testsuite/ssh-basic_test.py | 14 | CODE | |
| LOW | testsuite/ssh-basic_test.py | 44 | CODE | |
| LOW | testsuite/ssh-basic_test.py | 44 | CODE | |
| LOW | testsuite/mutatefns.py | 16 | CODE | |
| LOW | testsuite/acls_test.py | 9 | CODE | |
| LOW | testsuite/hardlinks_test.py | 14 | CODE | |
| LOW | testsuite/hardlinks_test.py | 14 | CODE | |
| LOW | testsuite/files-from_test.py | 8 | CODE | |
| LOW | testsuite/files-from_test.py | 8 | CODE | |
| LOW | testsuite/files-from_test.py | 8 | CODE | |
| LOW | testsuite/daemon-refuse_test.py | 12 | CODE | |
| LOW | testsuite/devices-fake_test.py | 13 | CODE | |
| LOW | testsuite/devices-fake_test.py | 13 | CODE | |
| LOW | testsuite/devices-fake_test.py | 13 | CODE | |
| LOW | testsuite/devices-fake_test.py | 13 | CODE | |
| LOW | testsuite/devices-fake_test.py | 13 | CODE | |
| LOW | testsuite/rsyncfns.py | 18 | CODE | |
| LOW | testsuite/daemon-link-dest-escape_test.py | 22 | CODE | |
| LOW | testsuite/variety_test.py | 32 | CODE | |
| LOW | testsuite/missing_test.py | 12 | CODE | |
| LOW | testsuite/symlink-unix-perms_test.py | 6 | CODE | |
| LOW | testsuite/symlink-unix-perms_test.py | 8 | CODE | |
| LOW | testsuite/abdiff.py | 25 | CODE | |
| LOW | testsuite/reverse-daemon-delta_test.py | 26 | CODE | |
| LOW | testsuite/symlink-exclude-meta_test.py | 14 | CODE | |
| LOW | testsuite/rrsync-sender-parent-pin_test.py | 30 | CODE | |
| LOW | testsuite/write-touched-blocks_test.py | 4 | CODE | |
| LOW | testsuite/write-touched-blocks_test.py | 5 | CODE | |
| LOW | testsuite/dir-sgid_test.py | 9 | CODE | |
| LOW | …uite/operator-path-traversal-backup-dir-daemon_test.py | 8 | CODE | |
| LOW | testsuite/remote-shell-newline-escaping_test.py | 12 | CODE | |
| LOW | testsuite/recv-discard-nullderef_test.py | 34 | CODE | |
| LOW | testsuite/acls-depth_test.py | 10 | CODE | |
| LOW | testsuite/read-batch-pipe_test.py | 7 | CODE | |
| LOW | testsuite/deep-path_test.py | 17 | CODE | |
| LOW | testsuite/daemon-filter-merge-bypass_test.py | 47 | CODE | |
| LOW | testsuite/daemon-standalone-detach_test.py | 20 | CODE | |
| LOW | …tsuite/operator-path-traversal-dest-dir-daemon_test.py | 7 | CODE | |
| LOW | testsuite/daemon-leaf-type-race-fchmod_test.py | 15 | CODE | |
| LOW | testsuite/daemon-leaf-type-race-fchmod_test.py | 21 | CODE | |
| LOW | testsuite/filter-leak_test.py | 4 | CODE | |
| LOW | testsuite/variety-symlink-traversal_test.py | 23 | CODE | |
| LOW | testsuite/variety-symlink-traversal_test.py | 25 | CODE | |
| LOW | testsuite/chroot-link-dest-inner-module_test.py | 2 | CODE | |
| LOW | testsuite/symlink-dirlink-basis_test.py | 20 | CODE | |
| LOW | testsuite/symlink-dirlink-basis_test.py | 20 | CODE | |
| LOW | testsuite/symlink-dirlink-basis_test.py | 20 | CODE | |
| LOW | testsuite/clean-fname-underflow_test.py | 12 | CODE | |
| LOW | testsuite/daemon_test.py | 16 | CODE | |
| 43 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | testsuite/daemon-auth_test.py | 23 | # test harness cannot redirect, so it would hang `make coverage` (or any run | COMMENT |
| MEDIUM | testsuite/contimeout-rsh_test.py | 51 | # not keep the harness's captured-pipe open after rsync has already exited. | COMMENT |
| MEDIUM | testsuite/abdiff.py | 212 | # "is this file hardlinked at all" (link-dest / -H) -- a robust | COMMENT |
| MEDIUM | testsuite/rename-fullpath-symlink-race_test.py | 99 | # which is harness noise, not a write escape. | COMMENT |
| MEDIUM | testsuite/rrsync-symlink_test.py | 118 | # Patched rrsync: RSYNC → fake_rsync (via the shared, path-robust helper). | COMMENT |
| MEDIUM | testsuite/daemon-standalone-detach_test.py | 33 | # disconnected Windows process the harness can't reap, so it lingers as an orphan | COMMENT |
| MEDIUM | testsuite/ownership-depth_test.py | 10 | # Rerun under the fleet harness's non-root pass (testsuite/fleettest.py): the uid | COMMENT |
| MEDIUM | testsuite/daemon-leaf-type-race-fchmod_test.py | 72 | # Enter helper mode before importing the test harness, which requires runner | COMMENT |
| MEDIUM | testsuite/daemon-namecvt-empty-response_test.py | 53 | # Skips as root (see the my_uid==0 guard below), so the fleet harness reruns it | COMMENT |
| MEDIUM | testsuite/daemon-namecvt-empty-response_test.py | 79 | # for the fleet harness's non-root pass) or it will silently never run in CI. | COMMENT |
| MEDIUM | testsuite/daemon_test.py | 9 | # Rerun under the fleet harness's non-root pass (testsuite/fleettest.py): a | COMMENT |
| MEDIUM | …connect-prog-nested-singlequote-host-injection_test.py | 34 | # transfer until the harness timeout instead of failing fast. | COMMENT |
| MEDIUM | testsuite/fleettest.py | 130 | # Set from --repo in main() (default: cwd). The harness builds whatever rsync | COMMENT |
| MEDIUM | testsuite/daemon-auth-digest-floor_test.py | 44 | # /dev/tty and would hang the harness) -- see daemon-auth_test.py. | COMMENT |
| MEDIUM | .github/workflows/ubuntu-build.yml | 65 | # harness's nonroot_tests). | COMMENT |
| MEDIUM | .github/workflows/fleettest.yml | 7 | # Bitrot check for testsuite/fleettest.py (the developer fleet CI harness). | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | testsuite/symlink-unix-perms_test.py | 27 | # Create a test directory and a test file in FROMDIR for use later as symlink | COMMENT |
| MEDIUM | testsuite/symlink-unix-perms_test.py | 75 | # Create a number of symlinks to use for testing rsync. | COMMENT |
| MEDIUM | testsuite/write-touched-blocks_test.py | 92 | # Create a file with written data on the ends, but a massive 4 MiB hole in the middle. | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 178 | # Create the trusted nested symlink pointing to the kernel pipe | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 200 | # Create a local, relative 'dev/fd' structure inside our working directory | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 204 | # Create a real file called 'pipe:[' with valid data | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 208 | # Create a symlink named '99' that points to the literal file 'pipe:[' | COMMENT |
| MEDIUM⚡ | testsuite/pseudo-paths_test.py | 337 | # Create the trusted nested symlink pointing to the kernel pipe | COMMENT |
| MEDIUM | testsuite/alt-dest_test.py | 33 | # Create a side dir with one identically-named candidate so copy_file()'s | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | runtests.py | 182 | CODE | |
| LOW | runtests.py | 270 | CODE | |
| LOW | runtests.py | 565 | CODE | |
| LOW | runtests.py | 661 | CODE | |
| LOW | packaging/pkglib.py | 26 | CODE | |
| LOW | packaging/pkglib.py | 174 | CODE | |
| LOW | packaging/pkglib.py | 209 | CODE | |
| LOW | packaging/release.py | 176 | CODE | |
| LOW | packaging/release.py | 293 | CODE | |
| LOW | testsuite/rsync_proto.py | 804 | CODE | |
| LOW | testsuite/rsync_proto.py | 857 | CODE | |
| LOW | testsuite/xrsync.py | 91 | CODE | |
| LOW | testsuite/rsyncfns.py | 1206 | CODE | |
| LOW | testsuite/rsyncfns.py | 1463 | CODE | |
| LOW | testsuite/rsyncfns.py | 2308 | CODE | |
| LOW | testsuite/rsyncfns.py | 2612 | CODE | |
| LOW | testsuite/rsyncfns.py | 2804 | CODE | |
| LOW | testsuite/rsyncfns.py | 2822 | CODE | |
| LOW | testsuite/files-from-leak_test.py | 102 | CODE | |
| LOW | testsuite/abdiff.py | 173 | CODE | |
| LOW | testsuite/abdiff.py | 1803 | CODE | |
| LOW | testsuite/abdiff.py | 2248 | CODE | |
| LOW | testsuite/abdiff.py | 2550 | CODE | |
| LOW | testsuite/abdiff.py | 2712 | CODE | |
| LOW | testsuite/perftest.py | 170 | CODE | |
| LOW | testsuite/perftest.py | 282 | CODE | |
| LOW | testsuite/perftest.py | 336 | CODE | |
| LOW | testsuite/perftest.py | 381 | CODE | |
| LOW | testsuite/perftest.py | 394 | CODE | |
| LOW | testsuite/rrsync-sender-leaf-flip_test.py | 76 | CODE | |
| LOW | testsuite/rrsync-pull-arg-shapes_test.py | 110 | CODE | |
| LOW | testsuite/filter-leak_test.py | 104 | CODE | |
| LOW | testsuite/fleettest.py | 329 | CODE | |
| LOW | testsuite/fleettest.py | 755 | CODE | |
| LOW | testsuite/fleettest.py | 1152 | CODE | |
| LOW | testsuite/early-input-symlink_test.py | 88 | CODE | |
| LOW | …licious-server-partial-basis-symlink-overwrite_test.py | 58 | CODE | |
| LOW | …uite/authenticate-no-ocloexec-build-regression_test.py | 13 | CODE | |
| LOW | testsuite/daemon-stdin-unix-listener_test.py | 30 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | testsuite/rrsync-specials-denied_test.py | 166 | except Exception: | CODE |
| LOW | testsuite/mutatefns.py | 54 | except Exception as e: # noqa: BLE001 - report it | CODE |
| LOW | testsuite/rsyncfns.py | 889 | except Exception: | CODE |
| LOW | testsuite/checksum-zero-blocklen_test.py | 57 | except Exception as exc: # noqa: BLE001 - reported below | CODE |
| LOW | testsuite/peer-legacy-implied-delete-scope_test.py | 76 | except Exception as exc: # noqa: BLE001 | CODE |
| MEDIUM | testsuite/peer-legacy-implied-delete-scope_test.py | 44 | def serve(): | CODE |
| LOW | testsuite/symlink-unix-perms_test.py | 61 | except Exception as e: | CODE |
| MEDIUM | testsuite/abdiff.py | 2736 | def worker(s): | CODE |
| LOW | testsuite/abdiff.py | 2420 | except Exception as ex: | CODE |
| LOW | testsuite/abdiff.py | 2739 | except Exception as ex: # never let one scenario kill the pool | CODE |
| LOW | testsuite/mkvariety.py | 45 | except Exception: | CODE |
| LOW | testsuite/malicious-dot-file-delete-scope_test.py | 70 | except Exception as exc: # noqa: BLE001 - reported below | CODE |
| MEDIUM | testsuite/malicious-dot-file-delete-scope_test.py | 54 | def serve(): | CODE |
| LOW | testsuite/malicious-dot-dir-delete-scope_test.py | 73 | except Exception as exc: # noqa: BLE001 - reported below | CODE |
| MEDIUM | testsuite/malicious-dot-dir-delete-scope_test.py | 53 | def serve(): | CODE |
| LOW | testsuite/daemon-chroot_test.py | 45 | except Exception: | CODE |
| MEDIUM | testsuite/fleettest.py | 968 | def current_branch() -> str: | CODE |
| LOW⚡ | testsuite/fleettest.py | 973 | except Exception: | CODE |
| LOW | testsuite/fleettest.py | 1364 | except Exception as e: # never let one target kill the run | STRING |
| LOW | testsuite/fleettest.py | 1378 | except Exception as e: # a whole group died: account for each | STRING |
| LOW | testsuite/xattr-wire-cap_test.py | 72 | except Exception as exc: # noqa: BLE001 - reported below | CODE |
| LOW | testsuite/scanner-batch-flag-mismatch_test.py | 33 | except Exception as e: | CODE |
| LOW | testsuite/stdio_daemon.py | 50 | except Exception: | CODE |
| LOW | …uite/daemon-copylinks-parent-target-regression_test.py | 43 | except Exception as exc: # noqa: BLE001 - retain daemon stderr for the oracle | CODE |
| LOW | …licious-server-partial-basis-symlink-overwrite_test.py | 197 | except Exception as exc: # noqa: BLE001 | CODE |
| MEDIUM | …licious-server-partial-basis-symlink-overwrite_test.py | 58 | def serve(): | CODE |
| LOW | …stsuite/readonly-partial-abort-mode-regression_test.py | 97 | except Exception as exc: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | testsuite/rsyncfns.py | 2448 | def hardlink_symlinks_supported(where=None) -> bool: | STRING |
| LOW | testsuite/files-from-leak_test.py | 102 | def root_owned_backup_symlink(): | CODE |
| LOW | testsuite/rrsync-sender-parent-pin_test.py | 108 | def resolve_with_parent_swapped(source): | STRING |
| LOW | testsuite/macos-setgid-ordinary-mode-regression_test.py | 42 | def _scratch_with_ungrantable_group(): | CODE |
| LOW | testsuite/filter-leak_test.py | 104 | def root_owned_backup_symlink(): | CODE |
| LOW | testsuite/bare-do-open-symlink-race_test.py | 50 | def verify_outside_unchanged_or_absent(label: str, target: str) -> None: | CODE |
| LOW | testsuite/variety-symlink-traversal_test.py | 139 | def case_receiver_intermediate(): | CODE |
| LOW | …stsuite/readonly-partial-abort-mode-regression_test.py | 54 | def wait_for_generator_request(): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | testsuite/write-touched-blocks_test.py | 151 | # Step 1: Generate the batch file (Sender side) | COMMENT |
| LOW⚡ | testsuite/write-touched-blocks_test.py | 158 | # Step 2: Apply the batch file and collect stats (Receiver side) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | testsuite/write-touched-blocks_test.py | 151 | # Step 1: Generate the batch file (Sender side) | COMMENT |
| LOW⚡ | testsuite/write-touched-blocks_test.py | 158 | # Step 2: Apply the batch file and collect stats (Receiver side) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packaging/pkglib.py | 20 | # Set this to an encoding name or set it to None to avoid the default encoding idiom. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | testsuite/rsync_proto.py | 283 | CODE | |
| LOW | testsuite/abdiff.py | 548 | CODE |