From: Wayne Davison Date: Sat, 11 Nov 2006 05:09:17 +0000 (+0000) Subject: Die if we sent --max-delete=0 to a receiving side that is too old. X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/771d0add8fd662e2731e7c619738943bb36831ed Die if we sent --max-delete=0 to a receiving side that is too old. --- diff --git a/compat.c b/compat.c index 475a1fe4..b22c983b 100644 --- a/compat.c +++ b/compat.c @@ -26,9 +26,11 @@ int remote_protocol = 0; extern int verbose; extern int am_server; +extern int am_sender; extern int inplace; extern int fuzzy_basis; extern int read_batch; +extern int max_delete; extern int checksum_seed; extern int basis_dir_cnt; extern int prune_empty_dirs; @@ -75,6 +77,16 @@ void setup_protocol(int f_out,int f_in) exit_cleanup(RERR_PROTOCOL); } + if (protocol_version < 30) { + if (max_delete == 0 && am_sender) { + rprintf(FERROR, + "--max-delete=0 requires protocol 30 or higher" + " (negotiated %d).\n", + protocol_version); + exit_cleanup(RERR_PROTOCOL); + } + } + if (protocol_version < 29) { if (fuzzy_basis) { rprintf(FERROR,