Patch by Robert Scheck for csync2 <= 1.34 based on the patch by Roman Tereshonkov and Kari Hautio to avoid a build failure with librsync >= 1.0.0 (which is a security bugfix release). The discussion and solution finding can be found at https://bugs.launchpad.net/duplicity/+bug/1416344 (for duplicity). --- csync2-1.34/rsync.c 2007-07-24 23:04:18.000000000 +0200 +++ csync2-1.34/rsync.c.librsync-1.0.0 2015-03-02 00:18:43.000000000 +0100 @@ -134,8 +134,13 @@ if ( isreg ) { csync_debug(3, "Running rs_sig_file() from librsync....\n"); +#ifdef RS_DEFAULT_STRONG_LEN result = rs_sig_file(basis_file, sig_file, RS_DEFAULT_BLOCK_LEN, RS_DEFAULT_STRONG_LEN, &stats); +#else /* librsync >= 1.0.0 */ + result = rs_sig_file(basis_file, sig_file, + RS_DEFAULT_BLOCK_LEN, 8, RS_MD4_SIG_MAGIC, &stats); +#endif if (result != RS_DONE) { csync_debug(0, "Internal error from rsync library!\n"); goto error; @@ -216,8 +221,13 @@ if ( !basis_file ) basis_file = fopen("/dev/null", "rb"); csync_debug(3, "Running rs_sig_file() from librsync..\n"); +#ifdef RS_DEFAULT_STRONG_LEN result = rs_sig_file(basis_file, sig_file, RS_DEFAULT_BLOCK_LEN, RS_DEFAULT_STRONG_LEN, &stats); +#else /* librsync >= 1.0.0 */ + result = rs_sig_file(basis_file, sig_file, + RS_DEFAULT_BLOCK_LEN, 8, RS_MD4_SIG_MAGIC, &stats); +#endif if (result != RS_DONE) csync_fatal("Got an error from librsync, too bad!\n");