Hello community, here is the log from the commit of package csync2 for openSUSE:Factory checked in at 2016-05-17 17:16:16 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/csync2 (Old) and /work/SRC/openSUSE:Factory/.csync2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "csync2" Changes: -------- --- /work/SRC/openSUSE:Factory/csync2/csync2.changes 2015-03-28 18:38:41.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.csync2.new/csync2.changes 2016-05-17 17:16:17.000000000 +0200 @@ -1,0 +2,20 @@ +Fri May 6 21:13:01 UTC 2016 - jeng...@inai.de + +- Avoid runtime dependency on systemd, the macros can all deal with + its absence. +- Ensure csync@.service template instances are disabled on package + removal. + +------------------------------------------------------------------- +Wed Apr 27 09:49:11 UTC 2016 - kgronl...@suse.com + +- Update to csync2-2.0-6-g10636a4: + - Document the -N flag to bind csync2 to a specific ip address. + - fix diff mode truncation to first 512 byte + - fix diff mode prefix substitution + +- Drop merged patches: + - Remove csync2-librsync-1.0.0.patch + - Remove fix-csync2_ssl_cert-filename.patch + +------------------------------------------------------------------- Old: ---- csync2-2.0+git.1368794815.cf835a7.tar.bz2 csync2-librsync-1.0.0.patch fix-csync2_ssl_cert-filename.patch New: ---- csync2-2.0+git.1461714863.10636a4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ csync2.spec ++++++ --- /var/tmp/diff_new_pack.4zXGgb/_old 2016-05-17 17:16:18.000000000 +0200 +++ /var/tmp/diff_new_pack.4zXGgb/_new 2016-05-17 17:16:18.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package csync2 # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,7 +21,7 @@ Group: Productivity/Clustering/HA Name: csync2 -Version: 2.0+git.1368794815.cf835a7 +Version: 2.0+git.1461714863.10636a4 Release: 0 Url: http://oss.linbit.com/csync2/ #Source0: http://oss.linbit.com/csync2/%{name}-%{version}.tar.gz @@ -34,14 +34,10 @@ Patch0: csync2-fix-xinetd.patch # PATCH-FIX-UPSTREAM -- add-ac_prog_cpp.patch tser...@suse.com -- fix ugly ./configure warnings about missing headers Patch10: add-ac_prog_cpp.patch -# PATCH-FIX-UPSTREAM -- fix-csync2_ssl_cert-filename.patch tser...@suse.com -- correct csync2 ssl cert filename -Patch11: fix-csync2_ssl_cert-filename.patch # PATCH-FIX-UPSTREAM -- fix-sonames.patch tser...@suse.com -- use properly versioned sonames in dlopen() Patch12: fix-sonames.patch # PATCH-FIX-UPSTREAM -- add-COPYING.patch tser...@suse.com -- ensure COPYING is present in docfiles and thus %doc Patch13: add-COPYING.patch -# PATCH-FIX-UPSTREAM csync2-librsync-1.0.0.patch dims...@opensuse.org -- Fix build with librsync 1.0.0 -Patch14: csync2-librsync-1.0.0.patch BuildRequires: autoconf BuildRequires: automake @@ -55,7 +51,6 @@ BuildRequires: sqlite3-devel Requires: openssl Requires: sqlite3 -%{?systemd_requires} %if 0%{?suse_version} >= 1210 BuildRequires: systemd %endif @@ -64,7 +59,6 @@ %if 0%{?suse_version} > 1220 BuildRequires: texlive-nopageno %endif - BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -79,10 +73,8 @@ %patch0 -p1 %patch10 -p1 -%patch11 -p1 %patch12 -p1 %patch13 -p1 -%patch14 -p1 %build export CFLAGS="%{optflags}" @@ -131,7 +123,7 @@ fi %preun -%service_del_preun csync2.socket +%service_del_preun csync2.socket csync2@.service # Cleanup all databases upon last removal if [ $1 -eq 0 ]; then rm -f %{_localstatedir}/lib/csync2/* ++++++ csync2-2.0+git.1368794815.cf835a7.tar.bz2 -> csync2-2.0+git.1461714863.10636a4.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/Makefile.am new/csync2-2.0+git.1461714863.10636a4/Makefile.am --- old/csync2-2.0+git.1368794815.cf835a7/Makefile.am 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/Makefile.am 2016-04-27 11:48:11.000000000 +0200 @@ -1,5 +1,5 @@ # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/README new/csync2-2.0+git.1461714863.10636a4/README --- old/csync2-2.0+git.1368794815.cf835a7/README 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/README 2016-04-27 11:48:11.000000000 +0200 @@ -19,7 +19,7 @@ ========= csync2 - cluster synchronization tool, 2nd generation -Copyright 2004 - 2013 LINBIT Information Technologies GmbH +Copyright 2004 - 2015 LINBIT Information Technologies GmbH http://www.linbit.com; see also AUTHORS This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/action.c new/csync2-2.0+git.1461714863.10636a4/action.c --- old/csync2-2.0+git.1368794815.cf835a7/action.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/action.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/autogen.sh new/csync2-2.0+git.1461714863.10636a4/autogen.sh --- old/csync2-2.0+git.1368794815.cf835a7/autogen.sh 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/autogen.sh 2016-04-27 11:48:11.000000000 +0200 @@ -1,7 +1,7 @@ #!/bin/bash -x # # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cfgfile_parser.y new/csync2-2.0+git.1461714863.10636a4/cfgfile_parser.y --- old/csync2-2.0+git.1368794815.cf835a7/cfgfile_parser.y 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cfgfile_parser.y 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cfgfile_scanner.l new/csync2-2.0+git.1461714863.10636a4/cfgfile_scanner.l --- old/csync2-2.0+git.1368794815.cf835a7/cfgfile_scanner.l 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cfgfile_scanner.l 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/check.c new/csync2-2.0+git.1461714863.10636a4/check.c --- old/csync2-2.0+git.1368794815.cf835a7/check.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/check.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/checktxt.c new/csync2-2.0+git.1461714863.10636a4/checktxt.c --- old/csync2-2.0+git.1368794815.cf835a7/checktxt.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/checktxt.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/configure.ac new/csync2-2.0+git.1461714863.10636a4/configure.ac --- old/csync2-2.0+git.1368794815.cf835a7/configure.ac 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/configure.ac 2016-04-27 11:48:11.000000000 +0200 @@ -1,5 +1,5 @@ # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA # Process this file with autoconf to produce a configure script. -AC_INIT(csync2, 2.0rc2, csy...@lists.linbit.com) +AC_INIT(csync2, 2.0, csy...@lists.linbit.com) AM_INIT_AUTOMAKE AC_CONFIG_SRCDIR(csync2.c) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/conn.c new/csync2-2.0+git.1461714863.10636a4/conn.c --- old/csync2-2.0+git.1368794815.cf835a7/conn.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/conn.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify @@ -281,7 +281,7 @@ return 0; ASPRINTF(&ssl_keyfile, "%s/csync2_ssl_key.pem", systemdir); - ASPRINTF(&ssl_certfile, "%s/csync_ssl_cert.pem", systemdir); + ASPRINTF(&ssl_certfile, "%s/csync2_ssl_cert.pem", systemdir); gnutls_global_init(); gnutls_global_set_log_function(ssl_log); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/csync2.c new/csync2-2.0+git.1461714863.10636a4/csync2.c --- old/csync2-2.0+git.1368794815.cf835a7/csync2.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/csync2.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify @@ -100,7 +100,7 @@ printf( "\n" PACKAGE_STRING " - cluster synchronization tool, 2nd generation\n" -"Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH\n" +"Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH\n" " http://www.linbit.com\n" "See also: http://git.linbit.com/csync2.git/?a=blob;f=AUTHORS\n" "\n" @@ -169,6 +169,11 @@ " corruption if the operating system crashes or the computer\n" " loses power.\n" "\n" +" -N address When running in stand-alone mode with -ii bind to a\n" +" specific interface. You can pass either a hostname or ip\n" +" address. If used, this value must match exactly the host\n" +" value in each csync2.cfg file.\n" +"\n" " -I Init-run. Use with care and read the documentation first!\n" " You usually do not need this option unless you are\n" " initializing groups with really large file lists.\n" @@ -256,7 +261,7 @@ struct addrinfo hints; struct addrinfo *result, *rp; int save_errno; - int sfd = -1, s, on = 1; + int sfd = -1, s, off = 0, on = 1; memset(&hints, 0, sizeof(struct addrinfo)); hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */ hints.ai_socktype = SOCK_STREAM; @@ -284,7 +289,9 @@ goto error; if (setsockopt(sfd, IPPROTO_TCP, TCP_NODELAY, &on, (socklen_t) sizeof(on)) < 0) goto error; - + if (rp->ai_family == AF_INET6) + if (setsockopt(sfd, IPPROTO_IPV6, IPV6_V6ONLY, &off, (socklen_t) sizeof(off)) < 0) + goto error; if (bind(sfd, rp->ai_addr, rp->ai_addrlen) == 0) break; /* Success */ @@ -856,6 +863,7 @@ case MODE_TEST_SYNC: { char *realname; + char *pfname; if (init_run && init_run_with_removals) init_run |= 2; if (init_run && init_run_straight) @@ -866,12 +874,14 @@ realname = getrealfn(argv[optind+2]); csync_check_usefullness(realname, 0); + pfname=strdup(prefixencode(realname)); if ( mode_test_auto_diff ) { csync_compare_mode = 1; - retval = csync_diff(argv[optind], argv[optind+1], realname); + retval = csync_diff(argv[optind], argv[optind+1], pfname); } else - if ( csync_insynctest(argv[optind], argv[optind+1], init_run, 0, realname) ) + if ( csync_insynctest(argv[optind], argv[optind+1], init_run, 0, pfname) ) retval = 2; + free(pfname); break; case 2: if ( csync_insynctest(argv[optind], argv[optind+1], init_run, mode_test_auto_diff, 0) ) @@ -881,10 +891,12 @@ realname = getrealfn(argv[optind]); csync_check_usefullness(realname, 0); + pfname=strdup(prefixencode(realname)); if ( mode_test_auto_diff ) csync_compare_mode = 1; - if ( csync_insynctest_all(init_run, mode_test_auto_diff, realname) ) + if ( csync_insynctest_all(init_run, mode_test_auto_diff, pfname) ) retval = 2; + free(pfname); break; case 0: if ( csync_insynctest_all(init_run, mode_test_auto_diff, 0) ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/csync2.h new/csync2-2.0+git.1461714863.10636a4/csync2.h --- old/csync2-2.0+git.1368794815.cf835a7/csync2.h 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/csync2.h 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify @@ -21,7 +21,7 @@ #ifndef CSYNC2_H #define CSYNC2_H 1 -#define CSYNC2_VERSION "2.0-rc1" +#define CSYNC2_VERSION "2.0" #ifndef _GNU_SOURCE #define _GNU_SOURCE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/csync2.spec new/csync2-2.0+git.1461714863.10636a4/csync2.spec --- old/csync2-2.0+git.1368794815.cf835a7/csync2.spec 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/csync2.spec 2016-04-27 11:48:11.000000000 +0200 @@ -1,5 +1,5 @@ # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify @@ -31,7 +31,7 @@ Requires: sqlite openssl librsync Autoreqprov: on Version: 2.0 -Release: 0.2.rc2 +Release: 1 Source0: csync2-%{version}.tar.gz URL: http://oss.linbit.com/csync2 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -63,6 +63,7 @@ %makeinstall install -m 644 csync2.xinetd $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/csync2 +install -m 644 doc/csync2_paper.pdf $RPM_BUILD_ROOT%{_docdir}/csync2/csync2_paper.pdf %clean [ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT @@ -87,23 +88,5 @@ %config(noreplace) %{_sysconfdir}/csync2.cfg %changelog -* Thu May 02 2013 Lars Ellenberg <l...@linbit.com> - 2.0-0.2.rc2 -- preparations for 2.0 release - -* Tue Dec 06 2005 Clifford Wolf <clifford.w...@linbit.com> -- Some fixes and cleanups for RPM 4.4.1 - -* Sat Jun 04 2005 Clifford Wolf <clifford.w...@linbit.com> -- xinetd init script is now "%config(noreplace)" -- Some tiny cleanups - -* Mon Dec 10 2004 Tim Jackson <t...@timj.co.uk> -- Added xinetd init script -- Abstracted some config paths -- Tidied - -* Tue Oct 12 2004 Clifford Wolf <clifford.w...@linbit.com> -- Automatic set sepcs file 'Version' tag - -* Tue Sep 09 2004 - p...@linbit.com -- initial package +* Tue Jan 27 2015 Lars Ellenberg <lars.ellenb...@linbit.com> - 2.0-1 +- New upstream release diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/csync2_locheck.sh new/csync2-2.0+git.1461714863.10636a4/csync2_locheck.sh --- old/csync2-2.0+git.1368794815.cf835a7/csync2_locheck.sh 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/csync2_locheck.sh 2016-04-27 11:48:11.000000000 +0200 @@ -3,7 +3,7 @@ # Example /root/.bash_logout file for csync2. # # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cygwin/buildit.sh new/csync2-2.0+git.1461714863.10636a4/cygwin/buildit.sh --- old/csync2-2.0+git.1368794815.cf835a7/cygwin/buildit.sh 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cygwin/buildit.sh 2016-04-27 11:48:11.000000000 +0200 @@ -1,7 +1,7 @@ #!/bin/bash -ex # # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2hintd.c new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2hintd.c --- old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2hintd.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2hintd.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2hintd_fseh.cs new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2hintd_fseh.cs --- old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2hintd_fseh.cs 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2hintd_fseh.cs 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2monitor.c new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2monitor.c --- old/csync2-2.0+git.1368794815.cf835a7/cygwin/cs2monitor.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cygwin/cs2monitor.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/cygwin/readme_pkg.txt new/csync2-2.0+git.1461714863.10636a4/cygwin/readme_pkg.txt --- old/csync2-2.0+git.1368794815.cf835a7/cygwin/readme_pkg.txt 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/cygwin/readme_pkg.txt 2016-04-27 11:48:11.000000000 +0200 @@ -4,7 +4,7 @@ The Csync2 homepage can be reached at http://oss.linbit.com/. - Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH http://www.linbit.com; see also AUTHORS This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/daemon.c new/csync2-2.0+git.1461714863.10636a4/daemon.c --- old/csync2-2.0+git.1368794815.cf835a7/daemon.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/daemon.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/db.c new/csync2-2.0+git.1461714863.10636a4/db.c --- old/csync2-2.0+git.1368794815.cf835a7/db.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/db.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/debian/changelog new/csync2-2.0+git.1461714863.10636a4/debian/changelog --- old/csync2-2.0+git.1368794815.cf835a7/debian/changelog 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/debian/changelog 2016-04-27 11:48:11.000000000 +0200 @@ -1,8 +1,8 @@ -csync2 (2.0~0rc2) unstable; urgency=low +csync2 (2.0-1) unstable; urgency=low * Preparing new Upstream Version - -- Lars Ellenberg <l...@linbit.com> Thu, 02 May 2013 14:40:05 +0200 + -- Lars Ellenberg <l...@linbit.com> Mon, 09 Mar 2015 15:06:30 +0100 csync2 (2.0~0rc1) unstable; urgency=low diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/debian/copyright new/csync2-2.0+git.1461714863.10636a4/debian/copyright --- old/csync2-2.0+git.1368794815.cf835a7/debian/copyright 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/debian/copyright 2016-04-27 11:48:11.000000000 +0200 @@ -1,7 +1,7 @@ This package was first debianized by Philipp Richter <philipp.rich...@linbit.com> on Fri, 26 Mar 2004 15:03:45 +0100. -Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH http://www.linbit.com; see also AUTHORS License: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/debian/cron.d new/csync2-2.0+git.1461714863.10636a4/debian/cron.d --- old/csync2-2.0+git.1368794815.cf835a7/debian/cron.d 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/debian/cron.d 2016-04-27 11:48:11.000000000 +0200 @@ -2,7 +2,7 @@ # Test if this synchronization pair is in sync. # # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/doc/csync2_paper.tex new/csync2-2.0+git.1461714863.10636a4/doc/csync2_paper.tex --- old/csync2-2.0+git.1368794815.cf835a7/doc/csync2_paper.tex 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/doc/csync2_paper.tex 2016-04-27 11:48:11.000000000 +0200 @@ -569,7 +569,7 @@ \begin{tiny} \begin{verbatim} csync2 2.0 - cluster synchronization tool, 2nd generation -Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH http://www.linbit.com See also: http://git.linbit.com/csync2.git/?a=blob;f=AUTHORS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/error.c new/csync2-2.0+git.1461714863.10636a4/error.c --- old/csync2-2.0+git.1368794815.cf835a7/error.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/error.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/getrealfn.c new/csync2-2.0+git.1461714863.10636a4/getrealfn.c --- old/csync2-2.0+git.1368794815.cf835a7/getrealfn.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/getrealfn.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/groups.c new/csync2-2.0+git.1461714863.10636a4/groups.c --- old/csync2-2.0+git.1368794815.cf835a7/groups.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/groups.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/prefixsubst.c new/csync2-2.0+git.1461714863.10636a4/prefixsubst.c --- old/csync2-2.0+git.1368794815.cf835a7/prefixsubst.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/prefixsubst.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/release.sh new/csync2-2.0+git.1461714863.10636a4/release.sh --- old/csync2-2.0+git.1368794815.cf835a7/release.sh 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/release.sh 2016-04-27 11:48:11.000000000 +0200 @@ -1,7 +1,7 @@ #!/bin/bash # # csync2 - cluster synchronization tool, 2nd generation -# Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH +# Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH # http://www.linbit.com; see also AUTHORS # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/rsync.c new/csync2-2.0+git.1461714863.10636a4/rsync.c --- old/csync2-2.0+git.1368794815.cf835a7/rsync.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/rsync.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify @@ -461,7 +461,17 @@ goto out; csync_debug(3, "Running rs_sig_file() from librsync....\n"); +/* see upstream + * https://github.com/librsync/librsync/commit/152323729ac831727032daf50a10c1448b48f252 + * as reaction to SECURITY: CVE-2014-8242 + */ +#ifdef RS_DEFAULT_STRONG_LEN result = rs_sig_file(basis_file, sig_file, RS_DEFAULT_BLOCK_LEN, RS_DEFAULT_STRONG_LEN, &stats); +#else + /* For backward compatibility, for now hardcode RS_MD4_SIG_MAGIC. + * TODO: allow changing to RS_BLAKE2_SIG_MAGIC. */ + result = rs_sig_file(basis_file, sig_file, RS_DEFAULT_BLOCK_LEN, 0, RS_MD4_SIG_MAGIC, &stats); +#endif *sig_file_out = sig_file; sig_file = NULL; if (result != RS_DONE) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/tests/include.sh new/csync2-2.0+git.1461714863.10636a4/tests/include.sh --- old/csync2-2.0+git.1368794815.cf835a7/tests/include.sh 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/tests/include.sh 2016-04-27 11:48:11.000000000 +0200 @@ -59,6 +59,16 @@ >&44 echo "##<$lvl># $*" } +# Sometimes (e.g. when doing "-TT"), single shot ("-iii") is not good enough. +# But we should be able to kill that daemon without using "killall". +# So several layers of indirection are bad, +# the caller would not know whom to kill really. +csync2_daemon() +{ + dbg 1 "CSYNC2_SYSTEM_DIR=$CSYNC2_SYSTEM_DIR csync2 -D $CSYNC2_DATABASE $*" + exec "$SOURCE_DIR/csync2" -D "$CSYNC2_DATABASE" "$@" +} + csync2() { local ex diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/tests/t/0004.diff.t new/csync2-2.0+git.1461714863.10636a4/tests/t/0004.diff.t --- old/csync2-2.0+git.1368794815.cf835a7/tests/t/0004.diff.t 1970-01-01 01:00:00.000000000 +0100 +++ new/csync2-2.0+git.1461714863.10636a4/tests/t/0004.diff.t 2016-04-27 11:48:11.000000000 +0200 @@ -0,0 +1,90 @@ +#!/bin/bash + +. $(dirname $0)/../include.sh + +# That prepared some "node names" ($N1 .. $N9) and corresponding +# IPv4 addresses in /etc/hosts ($IP1 .. $IP9, 127.2.1.1 -- *.9) +# as well as variables $D1 .. $D9 to point to the respective sub tree +# of those "test node" instances. + +# Cleanup does clean the data base and the test directories. +# You probably want to do a cleanup first thing in each test script. +# You may even do it several times throughout such a script. +cleanup + +# A "Test" needs +# * an expectation (exit code) +# * a description, +# * a "simple command" with optional arguments. +# TEST is shorthand for TEST_EXPECT_EXIT_CODE 0 + +TEST_EXPECT_EXIT_CODE 2 "list non-existent db" csync2 -L -N $N1 +TEST_EXPECT_EXIT_CODE 2 "list non-existent db" csync2 -L -N $N2 + +# You are free to do whatever you want +# in preparation for the next test, +# remove some files, create some files, change some content + +# populate $D1 +# ------------ + +mkdir -p $D1/a +TEST "init db 1" csync2 -N $N1 -cIr $D1 + +seq 1000 | tee $D1/a/f >/dev/null +touch -d "last week" $D1/a/f +TEST "check" csync2 -N $N1 -cr $D1 +TEST "list dirty" csync2 -N $N1 -M + +# compare and sync between both instances +# --------------------------------------- +TEST "csync2 -uv" csync2_u $N1 $N2 +TEST "diff -rq" diff -rq $D1 $D2 + +# create conflicts +# ---------------- + +seq 1000 | tee $D1/a/f >/dev/null +seq 999 | tee $D2/a/f >/dev/null +TEST "check again" csync2 -N $N1 -cr $D1 +TEST "list dirty" csync2 -N $N1 -M + +# Verify the current diff: +csync2_T() +{ + csync2 -N $1 -iii & + sleep 1 + tmp=$( csync2 -N $2 -T ) + [[ "$tmp" = "$3" ]] +} + +csync2_TT() +{ + csync2_daemon -N $1 -ii & + d_pid=$! + sleep 1 + tmp=$( csync2 -N $2 -TT $2 $1 $3 ) + kill $d_pid && wait + [[ "$tmp" = "$4" ]] +} + +TEST "csync2 -T" csync2_T $N1 $N2 "\ +R 2.csync2.test 1.csync2.test %demodir% +X 2.csync2.test 1.csync2.test %demodir%/a/f" + +TEST "csync2 -TT" csync2_TT $N1 $N2 $D2/a/f "\ +--- 1.csync2.test:%demodir%/a/f ++++ 2.csync2.test:%demodir%/a/f +@@ -997,4 +997,3 @@ + 997 + 998 + 999 +-1000" + +TEST_EXPECT_EXIT_CODE 1 "csync2 -uv" csync2_u $N1 $N2 + +# force 1 -> 2 +# ---------------- +TEST "force" csync2 -N $N1 -frv $D1 +TEST "csync2 -uv" csync2_u $N1 $N2 +TEST "diff -rq" diff -rq $D1 $D2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/update.c new/csync2-2.0+git.1461714863.10636a4/update.c --- old/csync2-2.0+git.1368794815.cf835a7/update.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/update.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify @@ -884,7 +884,7 @@ if (!is_ok_response(read_conn_status(NULL, peername))) goto finish; - conn_printf("TYPE %s %s\n", g->key, filename); + conn_printf("TYPE %s %s\n", url_encode(g->key), url_encode(filename)); if (!is_ok_response(read_conn_status(NULL, peername))) goto finish; @@ -899,7 +899,7 @@ setenv("my_label",buffer,1); snprintf(buffer,512,"%s:%s",peername,filename); setenv("peer_label",buffer,1); - snprintf(buffer,512,"%s",filename); + snprintf(buffer,512,"%s",prefixsubst(filename)); setenv("diff_file",buffer,1); /* XXX no error check on setenv * (could be insufficient space in environment) */ @@ -909,11 +909,13 @@ p = popen(buffer, "w"); while ( (rc=conn_read(buffer, 512)) > 0 - && fwrite(buffer, rc, 1, p) == rc) + && fwrite(buffer, 1, rc, p) == rc) ; fclose(p); signal(SIGPIPE, old_sigpipe_handler); + if (rc > 0) + fprintf(stdout, "*** output to diff truncated\n"); finish: conn_close(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/csync2-2.0+git.1368794815.cf835a7/urlencode.c new/csync2-2.0+git.1461714863.10636a4/urlencode.c --- old/csync2-2.0+git.1368794815.cf835a7/urlencode.c 2013-08-21 06:48:24.000000000 +0200 +++ new/csync2-2.0+git.1461714863.10636a4/urlencode.c 2016-04-27 11:48:11.000000000 +0200 @@ -1,6 +1,6 @@ /* * csync2 - cluster synchronization tool, 2nd generation - * Copyright (C) 2004 - 2013 LINBIT Information Technologies GmbH + * Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH * http://www.linbit.com; see also AUTHORS * * This program is free software; you can redistribute it and/or modify