Hello community,

here is the log from the commit of package csync2 for openSUSE:Factory checked 
in at 2018-08-20 16:19:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/csync2 (Old)
 and      /work/SRC/openSUSE:Factory/.csync2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "csync2"

Mon Aug 20 16:19:05 2018 rev:22 rq:629416 version:2.0+git.1529072214.b66d298

Changes:
--------
--- /work/SRC/openSUSE:Factory/csync2/csync2.changes    2017-08-13 
14:59:31.285999838 +0200
+++ /work/SRC/openSUSE:Factory/.csync2.new/csync2.changes       2018-08-20 
16:19:07.656797667 +0200
@@ -1,0 +2,13 @@
+Wed Aug 15 14:20:12 UTC 2018 - [email protected]
+
+- comparison of peer names provided via command line should not be case 
sensitive (bsc#1082576)
+- fix for inetd stderr >& stdout
+- fix log message when generating backup files, demote log level
+- document -l and -N switches
+ 
+-------------------------------------------------------------------
+Tue Aug 14 14:10:16 UTC 2018 - [email protected]
+
+- Avoid systemd service removal errors when uninstalling (bsc#1093165)
+
+-------------------------------------------------------------------

Old:
----
  csync2-2.0+git.1461714863.10636a4.tar.bz2

New:
----
  csync2-2.0+git.1529072214.b66d298.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ csync2.spec ++++++
--- /var/tmp/diff_new_pack.pFo3oL/_old  2018-08-20 16:19:08.188798417 +0200
+++ /var/tmp/diff_new_pack.pFo3oL/_new  2018-08-20 16:19:08.188798417 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package csync2
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -17,10 +17,10 @@
 
 
 Name:           csync2
-Version:        2.0+git.1461714863.10636a4
+Version:        2.0+git.1529072214.b66d298
 Release:        0
 Summary:        Cluster synchronization tool
-License:        GPL-2.0+
+License:        GPL-2.0-or-later
 Group:          Productivity/Clustering/HA
 Url:            http://oss.linbit.com/csync2/
 #Source0:       http://oss.linbit.com/csync2/%{name}-%{version}.tar.gz
@@ -109,7 +109,7 @@
 fi
 
 %preun
-%service_del_preun csync2.socket [email protected]
+%service_del_preun csync2.socket
 # Cleanup all databases upon last removal
 if [ $1 -eq 0 ]; then
   rm -f %{_localstatedir}/lib/csync2/*

++++++ _service ++++++
--- /var/tmp/diff_new_pack.pFo3oL/_old  2018-08-20 16:19:08.212798451 +0200
+++ /var/tmp/diff_new_pack.pFo3oL/_new  2018-08-20 16:19:08.212798451 +0200
@@ -1,6 +1,6 @@
 <services>
   <service name="tar_scm" mode="disabled">
-    <param name="url">git://git.linbit.com/csync2.git</param>
+    <param name="url">https://github.com/LINBIT/csync2.git</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
     <param name="versionformat">2.0+git.%ct.%h</param>

++++++ csync2-2.0+git.1461714863.10636a4.tar.bz2 -> 
csync2-2.0+git.1529072214.b66d298.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/check.c 
new/csync2-2.0+git.1529072214.b66d298/check.c
--- old/csync2-2.0+git.1461714863.10636a4/check.c       2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/check.c       2018-06-15 
16:16:54.000000000 +0200
@@ -290,7 +290,7 @@
        if ( check_type>0 && lstat_strict(prefixsubst(file), &st) != 0 ) {
                if ( ignnoent ) return 0;
                csync_fatal("This should not happen: "
-                               "Can't stat %s.\n", file);
+                               "Can't stat %s.\n", prefixsubst(file));
        }
 
        switch ( check_type )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/configure.ac 
new/csync2-2.0+git.1529072214.b66d298/configure.ac
--- old/csync2-2.0+git.1461714863.10636a4/configure.ac  2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/configure.ac  2018-06-15 
16:16:54.000000000 +0200
@@ -43,7 +43,7 @@
 
 
 dnl inspired by rsync's configure.ac
-AC_CHECK_FUNCS(fchmod setmode open64 mkstemp64)
+AC_CHECK_FUNCS(fchmod setmode open64 mkstemp64 strlcpy)
 AC_CACHE_CHECK([for secure mkstemp],csync_cv_HAVE_SECURE_MKSTEMP,[
 AC_TRY_RUN([#include <stdlib.h>
 #include <sys/types.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/csync2.1 
new/csync2-2.0+git.1529072214.b66d298/csync2.1
--- old/csync2-2.0+git.1461714863.10636a4/csync2.1      2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/csync2.1      2018-06-15 
16:16:54.000000000 +0200
@@ -1,12 +1,14 @@
 .\"                                      Hey, EMACS: -*- nroff -*-
-.TH CSYNC2 "1" "March 2013" "csync2 " "User Commands"
+.TH CSYNC2 "1" "October 2017" "csync2 " "User Commands"
 .SH NAME
-csync2 \- cluster synchronization tool, 2nd generation
+csync2 2.0 \- cluster synchronization tool, 2nd generation
 .SH SYNOPSIS
 .B csync2
 .RI [ -v.. ] " [-C config-name]" " [-D database-dir]" " [-N hostname]" " [-p 
port]" ...
 .SH COPYRIGHT
-csync2 is copyright \(co 2004 \- 2013 by LINBIT Information Technologies GmbH
+csync2 is copyright \(co 2004 \- 2017 by LINBIT Information Technologies GmbH
+.IP
+http://www.linbit.com
 .PP
 csync2 is distributed under the GNU public license.
 See the file COPYING for details.
@@ -81,9 +83,9 @@
 .TP
 \fB\-TT\fR
 As \fB\-T\fR, but print the unified diffs.
-.IP
-The modes \fB\-H\fR, \fB\-L\fR, \fB\-M\fR and \fB\-S\fR return 2 if the 
requested db is empty.
-The mode \fB\-T\fR returns 2 if both hosts are in sync.
+.TP
+\fB\-R\fR
+Remove files from database which do not match config entries.
 .TP
 \fB\-i\fR
 Run in inetd server mode.
@@ -94,8 +96,10 @@
 \fB\-iii\fR
 Run in stand\-alone server mode (one connect only).
 .TP
-\fB\-R\fR
-Remove files from database which do not match config entries.
+\fB\-l\fR
+Send some messages to syslog instead of stderr to not clobber
+the protocol in case stdout and stderr point to the same fd.
+Default for inetd mode.
 .SS "Exit codes:"
 .IP
 The modes \fB\-H\fR, \fB\-L\fR, \fB\-M\fR and \fB\-S\fR return 2 if the 
requested db is empty.
@@ -121,6 +125,13 @@
 corruption if the operating system crashes or the computer
 loses power.
 .TP
+\fB\-N\fR address
+When running in stand\-alone mode with \fB\-ii\fR bind to a
+.IP
+specific interface. You can pass either a hostname or ip
+address. If used, this value must match exactly the host
+value in each csync2.cfg file.
+.TP
 \fB\-I\fR
 Init\-run. Use with care and read the documentation first!
 You usually do not need this option unless you are
@@ -159,7 +170,7 @@
 .HP
 \fB\-D\fR database\-dir or url
 .IP
-default: /var/lib/csync2
+default: \fI\,/var/lib/csync2\/\fP
     Absolute path: use sqlite database in that directory.
 .IP
 URLs:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/csync2.c 
new/csync2-2.0+git.1529072214.b66d298/csync2.c
--- old/csync2-2.0+git.1461714863.10636a4/csync2.c      2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/csync2.c      2018-06-15 
16:16:54.000000000 +0200
@@ -144,11 +144,15 @@
 "\n"
 "      -TT     As -T, but print the unified diffs.\n"
 "\n"
+"      -R      Remove files from database which do not match config entries.\n"
+"\n"
 "      -i      Run in inetd server mode.\n"
 "      -ii     Run in stand-alone server mode.\n"
 "      -iii    Run in stand-alone server mode (one connect only).\n"
 "\n"
-"      -R      Remove files from database which do not match config entries.\n"
+"      -l      Send some messages to syslog instead of stderr to not clobber\n"
+"              the protocol in case stdout and stderr point to the same fd.\n"
+"              Default for inetd mode.\n"
 "\n"
 "Exit codes:\n"
 "      The modes -H, -L, -M and -S return 2 if the requested db is empty.\n"
@@ -578,7 +582,7 @@
 
        /* Some inetd connect stderr to stdout.  The debug level messages on
         * stderr would confuse the csync2 protocol. Log to syslog instead. */
-       if ( mode == MODE_INETD && csync_debug_level && !csync_syslog )
+       if ( mode == MODE_INETD && !csync_syslog )
                csync_openlog();
 
        if ( *myhostname == 0 ) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/daemon.c 
new/csync2-2.0+git.1529072214.b66d298/daemon.c
--- old/csync2-2.0+git.1461714863.10636a4/daemon.c      2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/daemon.c      2018-06-15 
16:16:54.000000000 +0200
@@ -264,13 +264,13 @@
        struct stat buf;
        int rc = stat((filename + backupDirLength), &buf);
        if (rc == 0) {
-               csync_debug(0, "Stating original file %s rc: %d mode: %o", 
(filename + backupDirLength), rc, buf.st_mode);
+               csync_debug(1, "Stating original file %s rc: %d mode: %o \n", 
(filename + backupDirLength), rc, buf.st_mode);
 
                rc = chown(filename, buf.st_uid, buf.st_gid);
-               csync_debug(0, "Changing owner of %s to user %d and group %d, 
rc= %d \n", filename, buf.st_uid, buf.st_gid, rc);
+               csync_debug(rc == 0, "Changing owner of %s to user %d and group 
%d, rc= %d \n", filename, buf.st_uid, buf.st_gid, rc);
 
                rc = chmod(filename, buf.st_mode);
-               csync_debug(0, "Changing mode of %s to mode %d, rc= %d \n", 
filename, buf.st_mode, rc);
+               csync_debug(rc == 0, "Changing mode of %s to mode %o, rc= %d 
\n", filename, buf.st_mode, rc);
 
        } else {
                csync_debug(0, "Error getting mode and owner ship from %s \n", 
(filename + backupDirLength));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/db_sqlite.c 
new/csync2-2.0+git.1529072214.b66d298/db_sqlite.c
--- old/csync2-2.0+git.1461714863.10636a4/db_sqlite.c   2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/db_sqlite.c   2018-06-15 
16:16:54.000000000 +0200
@@ -56,16 +56,16 @@
 
 static void db_sqlite3_dlopen(void)
 {
-       csync_debug(2, "Opening shared library libsqlite3.so\n");
+       csync_debug(2, "Opening shared library libsqlite3.so.0\n");
 
-       dl_handle = dlopen("libsqlite3.so", RTLD_LAZY);
+       dl_handle = dlopen("libsqlite3.so.0", RTLD_LAZY);
        if (dl_handle == NULL) {
                csync_fatal
-                   ("Could not open libsqlite3.so: %s\n"
+                   ("Could not open libsqlite3.so.0: %s\n"
                     "Please install sqlite3 client library (libsqlite3) or use 
other database (postgres, mysql)\n",
                     dlerror());
        }
-       csync_debug(2, "Reading symbols from shared library libsqlite3.so\n");
+       csync_debug(2, "Reading symbols from shared library libsqlite3.so.0\n");
 
        LOOKUP_SYMBOL(dl_handle, sqlite3_open);
        LOOKUP_SYMBOL(dl_handle, sqlite3_close);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/csync2-2.0+git.1461714863.10636a4/doc/csync2_paper.tex 
new/csync2-2.0+git.1529072214.b66d298/doc/csync2_paper.tex
--- old/csync2-2.0+git.1461714863.10636a4/doc/csync2_paper.tex  2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/doc/csync2_paper.tex  2018-06-15 
16:16:54.000000000 +0200
@@ -569,7 +569,7 @@
 \begin{tiny}
 \begin{verbatim}
 csync2 2.0 - cluster synchronization tool, 2nd generation
-Copyright (C) 2004 - 2015 LINBIT Information Technologies GmbH
+Copyright (C) 2004 - 2017 LINBIT Information Technologies GmbH
         http://www.linbit.com
 See also: http://git.linbit.com/csync2.git/?a=blob;f=AUTHORS
 
@@ -617,6 +617,10 @@
         -ii     Run in stand-alone server mode.
         -iii    Run in stand-alone server mode (one connect only).
 
+        -l      Send some messages to syslog instead of stderr to not clobber
+                the protocol in case stdout and stderr point to the same fd.
+                Default for inetd mode.
+
         -R      Remove files from database which do not match config entries.
 
 Exit codes:
@@ -644,6 +648,11 @@
                 corruption if the operating system crashes or the computer
                 loses power.
 
+        -N address      When running in stand-alone mode with -ii bind to a
+                specific interface. You can pass either a hostname or ip
+                address. If used, this value must match exactly the host
+                value in each csync2.cfg file.
+
         -I      Init-run. Use with care and read the documentation first!
                 You usually do not need this option unless you are
                 initializing groups with really large file lists.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/rsync.c 
new/csync2-2.0+git.1529072214.b66d298/rsync.c
--- old/csync2-2.0+git.1461714863.10636a4/rsync.c       2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/rsync.c       2018-06-15 
16:16:54.000000000 +0200
@@ -49,6 +49,7 @@
  *
  * @return index of the terminating byte.
  **/
+#ifndef HAVE_STRLCPY
 static size_t strlcpy(char *d, const char *s, size_t bufsize)
 {
         size_t len = strlen(s);
@@ -61,6 +62,7 @@
         }
         return ret;
 }
+#endif
 
 /* splits filepath at the last '/', if any, like so:
  *     dirname         basename        filepath
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/tests/include.sh 
new/csync2-2.0+git.1529072214.b66d298/tests/include.sh
--- old/csync2-2.0+git.1461714863.10636a4/tests/include.sh      2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/tests/include.sh      2018-06-15 
16:16:54.000000000 +0200
@@ -283,19 +283,35 @@
 
 csync2_u()
 {
+       local tmp kid now client_exit nc_exit server_exit
        if csync2 -N $1 -M > /dev/null; then
                csync2 -N $2 -iii -vvv &
                kid=$!
 
+               # try to avoid the connect-before-listen race,
+               # wait for the expected listening socket to show up,
+               # with timeout using bash magic $SECONDS.
+               now=$SECONDS
+               while ! ss -tnl src $2:csync2 | grep -q ^LISTEN; do
+                       kill -0 $kid
+                       (( SECONDS - now < 2 ))
+                       sleep 0.1
+               done
+
                csync2 -N $1 -uvvv
                client_exit=$?
 
-               # server still alive?
-               # then no connection was made...
-               # attempt do one now.
-               tmp=$(nc $2 $CSYNC2_PORT <<<"BYE" )
-               nc_exit=$?
+               if ss -tnl src $2:csync2 | grep -q ^LISTEN; then
+                       # server still alive?
+                       # then no connection was made...
+                       # attempt to do one now.
+                       tmp=$(nc $2 $CSYNC2_PORT <<<"BYE" )
+                       nc_exit=$?
 
+                       [[ $nc_exit = 0 ]] || kill $kid
+               else
+                       nc_exit=1
+               fi
                wait $kid
                server_exit=$?
                [[ $client_exit = 0 && $server_exit = 0 && $nc_exit != 0 ]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/csync2-2.0+git.1461714863.10636a4/tests/t/0002.long-and-strange-file-names.t
 
new/csync2-2.0+git.1529072214.b66d298/tests/t/0002.long-and-strange-file-names.t
--- 
old/csync2-2.0+git.1461714863.10636a4/tests/t/0002.long-and-strange-file-names.t
    2016-04-27 11:48:11.000000000 +0200
+++ 
new/csync2-2.0+git.1529072214.b66d298/tests/t/0002.long-and-strange-file-names.t
    2018-06-15 16:16:54.000000000 +0200
@@ -1,5 +1,8 @@
 #!/bin/bash
 
+# cd to canonical path of .
+cd -P .
+
 . $(dirname $0)/../include.sh
 
 # That prepared some "node names" ($N1 .. $N9) and corresponding
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/csync2-2.0+git.1461714863.10636a4/tests/t/0003.case-compare.t 
new/csync2-2.0+git.1529072214.b66d298/tests/t/0003.case-compare.t
--- old/csync2-2.0+git.1461714863.10636a4/tests/t/0003.case-compare.t   
1970-01-01 01:00:00.000000000 +0100
+++ new/csync2-2.0+git.1529072214.b66d298/tests/t/0003.case-compare.t   
2018-06-15 16:16:54.000000000 +0200
@@ -0,0 +1,37 @@
+#!/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
+
+# populate $D1 
+# ------------
+
+create_some_files()
+{
+       date | tee $D1/1.txt $D1/hello.txt
+       date | tee $D1/1.TXT $D1/Hello.txt
+}
+
+TEST   "create some files"     create_some_files
+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
+
+# redirty only one
+date | tee -a $D1/1.txt $D1/hello.txt
+TEST   "check"         csync2 -N $N1 -cr $D1
+t() { [[ $(csync2 -N $N1 -M | wc -l) = 2 ]] ; }
+TEST   "only lower case should be dirty"       t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/csync2-2.0+git.1461714863.10636a4/update.c 
new/csync2-2.0+git.1529072214.b66d298/update.c
--- old/csync2-2.0+git.1461714863.10636a4/update.c      2016-04-27 
11:48:11.000000000 +0200
+++ new/csync2-2.0+git.1529072214.b66d298/update.c      2018-06-15 
16:16:54.000000000 +0200
@@ -838,7 +838,7 @@
                        int i=0, pnamelen = strlen(t->value);
 
                        while (active_peerlist[i]) {
-                               if ( !strncmp(active_peerlist+i, t->value, 
pnamelen) &&
+                               if ( !strncasecmp(active_peerlist+i, t->value, 
pnamelen) &&
                                     (active_peerlist[i+pnamelen] == ',' || 
!active_peerlist[i+pnamelen]) )
                                        goto found_asactive;
                                while (active_peerlist[i])

++++++ fix-sonames.patch ++++++
--- /var/tmp/diff_new_pack.pFo3oL/_old  2018-08-20 16:19:08.328798615 +0200
+++ /var/tmp/diff_new_pack.pFo3oL/_new  2018-08-20 16:19:08.328798615 +0200
@@ -48,31 +48,6 @@
  
        LOOKUP_SYMBOL(dl_handle, PQconnectdb);
        LOOKUP_SYMBOL(dl_handle, PQstatus);
-Index: csync2-2.0+git.1368794815.cf835a7/db_sqlite.c
-===================================================================
---- csync2-2.0+git.1368794815.cf835a7.orig/db_sqlite.c
-+++ csync2-2.0+git.1368794815.cf835a7/db_sqlite.c
-@@ -56,16 +56,16 @@ static void *dl_handle;
- 
- static void db_sqlite3_dlopen(void)
- {
--      csync_debug(2, "Opening shared library libsqlite3.so\n");
-+      csync_debug(2, "Opening shared library libsqlite3.so.0\n");
- 
--      dl_handle = dlopen("libsqlite3.so", RTLD_LAZY);
-+      dl_handle = dlopen("libsqlite3.so.0", RTLD_LAZY);
-       if (dl_handle == NULL) {
-               csync_fatal
--                  ("Could not open libsqlite3.so: %s\n"
-+                  ("Could not open libsqlite3.so.0: %s\n"
-                    "Please install sqlite3 client library (libsqlite3) or use 
other database (postgres, mysql)\n",
-                    dlerror());
-       }
--      csync_debug(2, "Reading symbols from shared library libsqlite3.so\n");
-+      csync_debug(2, "Reading symbols from shared library libsqlite3.so.0\n");
- 
-       LOOKUP_SYMBOL(dl_handle, sqlite3_open);
-       LOOKUP_SYMBOL(dl_handle, sqlite3_close);
 Index: csync2-2.0+git.1368794815.cf835a7/db_sqlite2.c
 ===================================================================
 --- csync2-2.0+git.1368794815.cf835a7.orig/db_sqlite2.c


Reply via email to