diff options
Diffstat (limited to 'net-misc/rsync/files/rsync-3.1.2-CVE-2017-17433-fixup.patch')
-rw-r--r-- | net-misc/rsync/files/rsync-3.1.2-CVE-2017-17433-fixup.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/net-misc/rsync/files/rsync-3.1.2-CVE-2017-17433-fixup.patch b/net-misc/rsync/files/rsync-3.1.2-CVE-2017-17433-fixup.patch new file mode 100644 index 000000000000..0cc9b8256dd2 --- /dev/null +++ b/net-misc/rsync/files/rsync-3.1.2-CVE-2017-17433-fixup.patch @@ -0,0 +1,33 @@ +From: Wayne Davison <wayned@samba.org> +Date: Sun, 3 Dec 2017 23:49:56 +0000 (-0800) +Subject: Fix issue with earlier path-check (fixes "make check") +X-Git-Url: https://git.samba.org/?p=rsync.git;a=commitdiff_plain;h=f5e8a17e093065fb20fea00a29540fe2c7896441;hp=5509597decdbd7b91994210f700329d8a35e70a1 + +Fix issue with earlier path-check (fixes "make check") +--- + +diff --git a/receiver.c b/receiver.c +index 9c46242..75cb00d 100644 +--- a/receiver.c ++++ b/receiver.c +@@ -574,15 +574,15 @@ int recv_files(int f_in, int f_out, char *local_name) + file = dir_flist->files[cur_flist->parent_ndx]; + fname = local_name ? local_name : f_name(file, fbuf); + +- if (daemon_filter_list.head +- && check_filter(&daemon_filter_list, FLOG, fname, 0) < 0) { ++ if (DEBUG_GTE(RECV, 1)) ++ rprintf(FINFO, "recv_files(%s)\n", fname); ++ ++ if (daemon_filter_list.head && (*fname != '.' || fname[1] != '\0') ++ && check_filter(&daemon_filter_list, FLOG, fname, 0) < 0) { + rprintf(FERROR, "attempt to hack rsync failed.\n"); + exit_cleanup(RERR_PROTOCOL); + } + +- if (DEBUG_GTE(RECV, 1)) +- rprintf(FINFO, "recv_files(%s)\n", fname); +- + #ifdef SUPPORT_XATTRS + if (preserve_xattrs && iflags & ITEM_REPORT_XATTR && do_xfers + && !(want_xattr_optim && BITS_SET(iflags, ITEM_XNAME_FOLLOWS|ITEM_LOCAL_CHANGE))) |