Hello community,
here is the log from the commit of package ocserv for openSUSE:Factory checked in at 2017-01-25 23:31:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ocserv (Old)
and /work/SRC/openSUSE:Factory/.ocserv.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ocserv"
Changes:
--------
--- /work/SRC/openSUSE:Factory/ocserv/ocserv.changes 2017-01-09 10:56:07.216453276 +0100
+++ /work/SRC/openSUSE:Factory/.ocserv.new/ocserv.changes 2017-01-25 23:31:44.494744426 +0100
@@ -1,0 +2,10 @@
+Mon Jan 23 16:35:52 UTC 2017 - i(a)marguerite.su
+
+- fix boo#1021353: ocserv randomly misbuilds man pages
+- add patch: boo1021353-ocserv-doc-racing-in-parallel-build.patch
+ * occtl and ocpasswd are both built from args.def, which
+ will cause a racing problem in parallel builds that autogen
+ write contents randomly. fixed by adding a prefix to make
+ them different in filename.
+
+-------------------------------------------------------------------
New:
----
boo1021353-ocserv-doc-racing-in-parallel-build.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ocserv.spec ++++++
--- /var/tmp/diff_new_pack.656IjJ/_old 2017-01-25 23:31:45.170642563 +0100
+++ /var/tmp/diff_new_pack.656IjJ/_new 2017-01-25 23:31:45.174641961 +0100
@@ -1,7 +1,7 @@
#
# spec file for package ocserv
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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
@@ -38,6 +38,8 @@
Patch1: %{name}-enable-systemd.patch
#PATCH-FIX-UPSTREAM marguerite(a)opensuse.org tweak configuration
Patch2: %{name}.config.patch
+#PATCH-FIX-UPSTREAM marguerite(a)opensuse.org avoid racing problem when building documentation in parallel
+Patch3: boo1021353-ocserv-doc-racing-in-parallel-build.patch
BuildRequires: autogen
BuildRequires: dbus-1-devel
BuildRequires: freeradius-client-devel
@@ -86,6 +88,7 @@
%setup -q
%patch1 -p1
%patch2 -p1
+%patch3 -p1
sed -i "s/\@AUTOGEN\@/autogen/" doc/Makefile.am
autoreconf -fiv
++++++ boo1021353-ocserv-doc-racing-in-parallel-build.patch ++++++
Index: b/doc/Makefile.am
===================================================================
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -10,12 +10,12 @@ ocserv.8: ../src/ocserv-args.def
@AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \
rm -f "$<".tmp
-occtl.8: ../src/occtl/args.def
+occtl.8: ../src/occtl/occtl-args.def
-$(SED) 's/@subheading \(.*\)/@*\n@var{\1}\n@*/' $< > "$<".tmp && \
@AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \
rm -f "$<".tmp
-ocpasswd.8: ../src/ocpasswd/args.def
+ocpasswd.8: ../src/ocpasswd/ocpasswd-args.def
-$(SED) 's/@subheading \(.*\)/@*\n@var{\1}\n@*/' $< > "$<".tmp && \
@AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \
rm -f "$<".tmp
Index: b/src/occtl/Makefile.am
===================================================================
--- a/src/occtl/Makefile.am
+++ b/src/occtl/Makefile.am
@@ -5,7 +5,7 @@ AM_CPPFLAGS += -I$(srcdir)/../../gl/ -I$
$(LIBNL3_CFLAGS) $(LIBPROTOBUF_C_CFLAGS) $(LIBTALLOC_CFLAGS) \
-I$(srcdir)/../common/ -I$(builddir)/../common/ $(CODE_COVERAGE_CFLAGS)
-EXTRA_DIST = args.def
+EXTRA_DIST = occtl-args.def
bin_PROGRAMS = occtl
Index: b/src/occtl/args.def
===================================================================
--- a/src/occtl/args.def
+++ /dev/null
@@ -1,105 +0,0 @@
-AutoGen Definitions options;
-prog-name = occtl;
-prog-title = "OpenConnect VPN server control";
-prog-desc = "OpenConnect VPN server control.";
-disable-save;
-no-xlate = opt;
-gnu-usage;
-config-header = config.h;
-long-opts;
-no-misuse-usage;
-short-usage = "Usage: occtl [options] [command]\nocctl --help for usage instructions.\n";
-explain = "";
-#include ../version.inc
-
-detail = "Openconnect VPN server control (occtl) is a tool to control
-the ocserv VPN server.";
-
-copyright = {
- date = "2014-2016";
- owner = "Red Hat";
- author = "Nikos Mavrogiannopoulos";
- eaddr = "openconnect-devel(a)lists.infradead.org";
- type = gplv2;
-};
-
-help-value = h;
-
-flag = {
- name = socket-file;
- value = s;
- arg-type = file;
- descrip = "Specify the server's occtl socket file";
- doc = "This option is only needed if you have multiple servers.";
-};
-
-flag = {
- name = json;
- value = j;
- descrip = "Output will be JSON formatted";
- doc = "This option can only be used with non-interactive output, e.g., 'occtl --json show users'.";
-};
-
-flag = {
- name = no-pager;
- value = n;
- descrip = "No pager will be used over output data";
- doc = "";
-};
-
-
-doc-section = {
- ds-type = 'SYNOPSIS';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-Openconnect VPN server control (occtl) is a tool to control
-the ocserv VPN server.
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'DESCRIPTION';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-This a control tool that can be used to send commands to ocserv. When
-called without any arguments the tool can be used interactively, where
-each command is entered on a command prompt; alternatively the tool
-can be called with the command specified as parameter. In the latter
-case the tool's exit code will reflect the successful execution of
-the command.
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'EXAMPLES';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-The tool can be run interactively when run with no arguments. When
-arguments are given they are interpreted as commands. For example:
-@example
-$ occtl show users
-@end example
-
-Any command line arguments to be used as options must preceed the
-command (if any), as shown below.
-@example
-$ occtl --json show users
-@end example
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'IMPLEMENTATION NOTES';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-This tool uses unix domain sockets to connect to ocserv.
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'SEE ALSO';
- ds-format = 'man';
- ds-text = <<-_EOText_
-ocserv(8)
-_EOText_;
-};
Index: b/src/occtl/occtl-args.def
===================================================================
--- /dev/null
+++ b/src/occtl/occtl-args.def
@@ -0,0 +1,105 @@
+AutoGen Definitions options;
+prog-name = occtl;
+prog-title = "OpenConnect VPN server control";
+prog-desc = "OpenConnect VPN server control.";
+disable-save;
+no-xlate = opt;
+gnu-usage;
+config-header = config.h;
+long-opts;
+no-misuse-usage;
+short-usage = "Usage: occtl [options] [command]\nocctl --help for usage instructions.\n";
+explain = "";
+#include ../version.inc
+
+detail = "Openconnect VPN server control (occtl) is a tool to control
+the ocserv VPN server.";
+
+copyright = {
+ date = "2014-2016";
+ owner = "Red Hat";
+ author = "Nikos Mavrogiannopoulos";
+ eaddr = "openconnect-devel(a)lists.infradead.org";
+ type = gplv2;
+};
+
+help-value = h;
+
+flag = {
+ name = socket-file;
+ value = s;
+ arg-type = file;
+ descrip = "Specify the server's occtl socket file";
+ doc = "This option is only needed if you have multiple servers.";
+};
+
+flag = {
+ name = json;
+ value = j;
+ descrip = "Output will be JSON formatted";
+ doc = "This option can only be used with non-interactive output, e.g., 'occtl --json show users'.";
+};
+
+flag = {
+ name = no-pager;
+ value = n;
+ descrip = "No pager will be used over output data";
+ doc = "";
+};
+
+
+doc-section = {
+ ds-type = 'SYNOPSIS';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+Openconnect VPN server control (occtl) is a tool to control
+the ocserv VPN server.
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'DESCRIPTION';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+This a control tool that can be used to send commands to ocserv. When
+called without any arguments the tool can be used interactively, where
+each command is entered on a command prompt; alternatively the tool
+can be called with the command specified as parameter. In the latter
+case the tool's exit code will reflect the successful execution of
+the command.
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'EXAMPLES';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+The tool can be run interactively when run with no arguments. When
+arguments are given they are interpreted as commands. For example:
+@example
+$ occtl show users
+@end example
+
+Any command line arguments to be used as options must preceed the
+command (if any), as shown below.
+@example
+$ occtl --json show users
+@end example
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'IMPLEMENTATION NOTES';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+This tool uses unix domain sockets to connect to ocserv.
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'SEE ALSO';
+ ds-format = 'man';
+ ds-text = <<-_EOText_
+ocserv(8)
+_EOText_;
+};
Index: b/src/ocpasswd/Makefile.am
===================================================================
--- a/src/ocpasswd/Makefile.am
+++ b/src/ocpasswd/Makefile.am
@@ -6,21 +6,21 @@ AM_CPPFLAGS += -I$(srcdir)/../../gl/ -I$
$(CODE_COVERAGE_CFLAGS) $(LIBGNUTLS_CFLAGS)
-EXTRA_DIST = args.def
+EXTRA_DIST = ocpasswd-args.def
BUILT_SOURCES = args.c args.h
bin_PROGRAMS = ocpasswd
noinst_LIBRARIES = libcmd-ocpasswd.a
-libcmd_ocpasswd_a_SOURCES = args.def args.c args.h
+libcmd_ocpasswd_a_SOURCES = ocpasswd-args.def args.c args.h
ocpasswd_SOURCES = ocpasswd.c
ocpasswd_LDADD = ../../gl/libgnu.a $(NEEDED_LIBOPTS) libcmd-ocpasswd.a
ocpasswd_LDADD += $(LIBGNUTLS_LIBS) $(LIBCRYPT) $(CODE_COVERAGE_LDFLAGS) \
$(LIBNETTLE_LIBS)
-args.c: $(srcdir)/args.def $(builddir)/../version.inc
+args.c: $(srcdir)/ocpasswd-args.def $(builddir)/../version.inc
if test "$(AUTOGEN)" = ":";then \
rm -f $(builddir)/args.c; \
rm -f $(builddir)/args.h; \
Index: b/src/ocpasswd/args.def
===================================================================
--- a/src/ocpasswd/args.def
+++ /dev/null
@@ -1,111 +0,0 @@
-AutoGen Definitions options;
-prog-name = ocpasswd;
-prog-title = "OpenConnect server password utility";
-prog-desc = "OpenConnect VPN server plain password file handling program.";
-disable-save;
-no-xlate = opt;
-gnu-usage;
-config-header = config.h;
-long-opts;
-no-misuse-usage;
-short-usage = "Usage: ocpasswd -c [passwd] [options] username\nocpasswd --help for usage instructions.\n";
-explain = "";
-reorder-args;
-argument = "[username]";
-#include ../version.inc
-
-detail = "This program is openconnect password (ocpasswd) utility. It allows the generation
-and handling of a 'plain' password file used by ocserv.";
-
-copyright = {
- date = "2013-2016";
- owner = "Nikos Mavrogiannopoulos";
- author = "Nikos Mavrogiannopoulos";
- eaddr = "openconnect-devel(a)lists.infradead.org";
- type = gplv2;
-};
-
-flag = {
- name = passwd;
- value = c;
- arg-type = file;
- descrip = "Password file";
- doc = "";
-};
-
-flag = {
- name = groupname;
- value = g;
- arg-type = string;
- descrip = "User's group name";
- doc = "";
-};
-
-flag = {
- name = delete;
- value = d;
- descrip = "Delete user";
- doc = "Removes the specified user from the password file";
-};
-
-flag = {
- name = lock;
- value = l;
- descrip = "Lock user";
- doc = "Prevents the specified user from logging in";
-};
-
-flag = {
- name = unlock;
- value = u;
- descrip = "Unlock user";
- doc = "Re-enables login for the specified user";
-};
-
-help-value = h;
-
-
-doc-section = {
- ds-type = 'FILES';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-@subheading Password file format
-The password format of ocpasswd is as follows.
-
-@example
-username:groupname:encoded-password
-@end example
-
-The crypt(3) encoding is used for the encoded-password.
-
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'EXAMPLES';
- ds-format = 'texi';
- ds-text = <<-_EOT_
-@subheading Adding a user
-@example
-$ ocpasswd -c ocpasswd my_username
-@end example
-
-@subheading Locking a user
-@example
-$ ocpasswd -c ocpasswd -l my_username
-@end example
-
-@subheading Unlocking a user
-@example
-$ ocpasswd -c ocpasswd -u my_username
-@end example
-_EOT_;
-};
-
-doc-section = {
- ds-type = 'SEE ALSO';
- ds-format = 'man';
- ds-text = <<-_EOText_
-ocserv(8), occtl(8)
-_EOText_;
-};
Index: b/src/ocpasswd/ocpasswd-args.def
===================================================================
--- /dev/null
+++ b/src/ocpasswd/ocpasswd-args.def
@@ -0,0 +1,111 @@
+AutoGen Definitions options;
+prog-name = ocpasswd;
+prog-title = "OpenConnect server password utility";
+prog-desc = "OpenConnect VPN server plain password file handling program.";
+disable-save;
+no-xlate = opt;
+gnu-usage;
+config-header = config.h;
+long-opts;
+no-misuse-usage;
+short-usage = "Usage: ocpasswd -c [passwd] [options] username\nocpasswd --help for usage instructions.\n";
+explain = "";
+reorder-args;
+argument = "[username]";
+#include ../version.inc
+
+detail = "This program is openconnect password (ocpasswd) utility. It allows the generation
+and handling of a 'plain' password file used by ocserv.";
+
+copyright = {
+ date = "2013-2016";
+ owner = "Nikos Mavrogiannopoulos";
+ author = "Nikos Mavrogiannopoulos";
+ eaddr = "openconnect-devel(a)lists.infradead.org";
+ type = gplv2;
+};
+
+flag = {
+ name = passwd;
+ value = c;
+ arg-type = file;
+ descrip = "Password file";
+ doc = "";
+};
+
+flag = {
+ name = groupname;
+ value = g;
+ arg-type = string;
+ descrip = "User's group name";
+ doc = "";
+};
+
+flag = {
+ name = delete;
+ value = d;
+ descrip = "Delete user";
+ doc = "Removes the specified user from the password file";
+};
+
+flag = {
+ name = lock;
+ value = l;
+ descrip = "Lock user";
+ doc = "Prevents the specified user from logging in";
+};
+
+flag = {
+ name = unlock;
+ value = u;
+ descrip = "Unlock user";
+ doc = "Re-enables login for the specified user";
+};
+
+help-value = h;
+
+
+doc-section = {
+ ds-type = 'FILES';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+@subheading Password file format
+The password format of ocpasswd is as follows.
+
+@example
+username:groupname:encoded-password
+@end example
+
+The crypt(3) encoding is used for the encoded-password.
+
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'EXAMPLES';
+ ds-format = 'texi';
+ ds-text = <<-_EOT_
+@subheading Adding a user
+@example
+$ ocpasswd -c ocpasswd my_username
+@end example
+
+@subheading Locking a user
+@example
+$ ocpasswd -c ocpasswd -l my_username
+@end example
+
+@subheading Unlocking a user
+@example
+$ ocpasswd -c ocpasswd -u my_username
+@end example
+_EOT_;
+};
+
+doc-section = {
+ ds-type = 'SEE ALSO';
+ ds-format = 'man';
+ ds-text = <<-_EOText_
+ocserv(8), occtl(8)
+_EOText_;
+};