summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWayne Davison <wayned@samba.org>2008-03-18 09:44:42 -0700
committerWayne Davison <wayned@samba.org>2008-03-18 09:44:42 -0700
commit99c3e591b201c28b8fe22c881332f8a4888e69b8 (patch)
tree9d2e026ded44b000f4fc25acada55d6edb72e700
parent1aefb7ef73751878d13eff717de61e76f690b57e (diff)
downloadrsync-99c3e591b201c28b8fe22c881332f8a4888e69b8.tar.gz
Reject a daemon-excluded destination.
-rw-r--r--main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/main.c b/main.c
index 95e5a061..8424e909 100644
--- a/main.c
+++ b/main.c
@@ -507,6 +507,14 @@ static char *get_local_name(struct file_list *flist, char *dest_path)
if (!dest_path || list_only)
return NULL;
+ if (server_filter_list.head
+ && (check_filter(&server_filter_list, dest_path, 0 != 0) < 0
+ || check_filter(&server_filter_list, dest_path, 1 != 0) < 0)) {
+ rprintf(FERROR, "skipping daemon-excluded destination \"%s\"\n",
+ dest_path);
+ exit_cleanup(RERR_FILESELECT);
+ }
+
/* See what currently exists at the destination. */
if ((statret = do_stat(dest_path, &st)) == 0) {
/* If the destination is a dir, enter it and use mode 1. */