rdiff-backup: Fix build with a ArchLinux patch.

This commit is contained in:
Moritz Ulrich 2015-03-29 11:40:35 +02:00
parent 028779fb40
commit da26c13df5
2 changed files with 22 additions and 1 deletions

View file

@ -8,7 +8,8 @@ stdenv.mkDerivation {
sha256 = "01hcwf5rgqi303fa4kdjkbpa7n8mvvh7h9gpgh2b23nz73k0q0zf";
};
phases = "unpackPhase installPhase";
patches = [ ./fix-librsync-rs_default_strong_len.patch ];
installPhase = ''
python ./setup.py install --prefix=$out
sed -i $out/bin/rdiff-backup -e \

View file

@ -0,0 +1,20 @@
Patch by Roman Tereshonkov and Kari Hautio for rdiff-backup <= 1.2.8 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).
--- rdiff-backup-1.2.8/_librsyncmodule.c 2009-03-16 15:36:21.000000000 +0100
+++ rdiff-backup-1.2.8/_librsyncmodule.c.librsync-1.0.0 2015-03-02 00:54:24.000000000 +0100
@@ -59,8 +59,13 @@
if (sm == NULL) return NULL;
sm->x_attr = NULL;
+#ifdef RS_DEFAULT_STRONG_LEN
sm->sig_job = rs_sig_begin((size_t)blocklen,
(size_t)RS_DEFAULT_STRONG_LEN);
+#else
+ sm->sig_job = rs_sig_begin((size_t)blocklen,
+ (size_t)8, RS_MD4_SIG_MAGIC);
+#endif
return (PyObject*)sm;
}