[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#928644: unblock: libqb/1.0.5-1



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package libqb

Dear Release Team,

The 1.0.4 upstream security release of libqb introduced regressions,
which were fixed in 1.0.4-2 by the addition of some quilt patches.
These patches were upstreamed and released as 1.0.5.  So the 1.0.5-1
version currently in unstable has no actual code changes, the patched
tree is identical to that of 1.0.4-2, except for the man page timestamps
(these files are rebuilt anyway), the version number and a punctuation
fix in the documentation (which also went upstream after 1.0.5).

The following debdiff is therefore not very insightful:

diff -Nru libqb-1.0.4/ChangeLog libqb-1.0.5/ChangeLog
--- libqb-1.0.4/ChangeLog	2019-04-12 10:30:53.000000000 +0200
+++ libqb-1.0.5/ChangeLog	2019-04-25 10:30:00.000000000 +0200
@@ -1,3 +1,35 @@
+2019-04-25  Christine Caulfield  <ccaulfie@redhat.com>
+
+	version: bump soname for 1.0.5 release
+
+2019-04-23  Ferenc Wágner  <wferi@debian.org>
+
+	Let remote_tempdir() assume a NUL-terminated name
+	This is the case already.  We also fix a buffer overflow opportunity in
+	the memcpy() call by this change.
+
+	Make it impossible to truncate or overflow the connection description
+	It's hard to predict the length of formatted output, so we'd better
+	notice (and abort) if the description is truncated.  Incidentally,
+	mkdtemp() does this for us in the shared memory branch, but do an
+	explicit check there as well for consistency, and get rid of the wrongly
+	parametrized strncat() risking a buffer overflow (CONNECTION_DESCRIPTION
+	is not the length of the source "/qb").
+	Similar truncation checks should be added to qb_ipcs_{shm,us}_connect()
+	where they build the request/response names, and possibly to other
+	places using snprintf().
+
+	Allow group access to the IPC directory
+	And don't abort if we aren't permitted to chown() it.  The client might
+	still have the privileges to enter it.
+
+	Errors are represented as negative values
+
+	Fix garbled Doxygen markup
+	Part of d0ec0a6 on the master branch: fix the unreadable docstring.
+
+	Fix spelling: plaform -> platform
+
 2019-04-12  Christine Caulfield  <ccaulfie@redhat.com>
 
 	version: update version-info for 1.0.4 release
diff -Nru libqb-1.0.4/configure libqb-1.0.5/configure
--- libqb-1.0.4/configure	2019-04-12 10:30:39.000000000 +0200
+++ libqb-1.0.5/configure	2019-04-25 10:29:47.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for libqb 1.0.4.
+# Generated by GNU Autoconf 2.69 for libqb 1.0.5.
 #
 # Report bugs to <developers@clusterlabs.org>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='libqb'
 PACKAGE_TARNAME='libqb'
-PACKAGE_VERSION='1.0.4'
-PACKAGE_STRING='libqb 1.0.4'
+PACKAGE_VERSION='1.0.5'
+PACKAGE_STRING='libqb 1.0.5'
 PACKAGE_BUGREPORT='developers@clusterlabs.org'
 PACKAGE_URL=''
 
@@ -1407,7 +1407,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures libqb 1.0.4 to adapt to many kinds of systems.
+\`configure' configures libqb 1.0.5 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1477,7 +1477,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libqb 1.0.4:";;
+     short | recursive ) echo "Configuration of libqb 1.0.5:";;
    esac
   cat <<\_ACEOF
 
@@ -1611,7 +1611,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libqb configure 1.0.4
+libqb configure 1.0.5
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2388,7 +2388,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libqb $as_me 1.0.4, which was
+It was created by libqb $as_me 1.0.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -4569,7 +4569,7 @@
 
 # Define the identity of the package.
  PACKAGE='libqb'
- VERSION='1.0.4'
+ VERSION='1.0.5'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -21860,7 +21860,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libqb $as_me 1.0.4, which was
+This file was extended by libqb $as_me 1.0.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21930,7 +21930,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-libqb config.status 1.0.4
+libqb config.status 1.0.5
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -Nru libqb-1.0.4/debian/changelog libqb-1.0.5/debian/changelog
--- libqb-1.0.4/debian/changelog	2019-04-18 18:38:20.000000000 +0200
+++ libqb-1.0.5/debian/changelog	2019-04-26 15:46:51.000000000 +0200
@@ -1,3 +1,14 @@
+libqb (1.0.5-1) unstable; urgency=medium
+
+  * [b862a98] New upstream release (1.0.5)
+    The 1.0.4-2 Debian release already carried quilt patches for all the
+    changes released with 1.0.5.  We're just synchronizing the version numbers
+    with this upload.
+  * [ff39181] Remove upstreamed patches, refresh the Hurd support patch
+  * [e36150c] New patch: doc: qbarray.h: remove stray asterisk
+
+ -- Ferenc Wágner <wferi@debian.org>  Fri, 26 Apr 2019 15:46:51 +0200
+
 libqb (1.0.4-2) unstable; urgency=medium
 
   * [55468ba] tests: let ipcserver clean up /dev/shm after ipcclient finishes
diff -Nru libqb-1.0.4/debian/patches/Allow-group-access-to-the-IPC-directory.patch libqb-1.0.5/debian/patches/Allow-group-access-to-the-IPC-directory.patch
--- libqb-1.0.4/debian/patches/Allow-group-access-to-the-IPC-directory.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Allow-group-access-to-the-IPC-directory.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,29 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Thu, 18 Apr 2019 13:20:38 +0200
-Subject: Allow group access to the IPC directory
-
-And don't abort if we aren't permitted to chown() it.  The client might
-still have the privileges to enter it.
----
- lib/ipc_setup.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c
-index 14c5e98..5e04974 100644
---- a/lib/ipc_setup.c
-+++ b/lib/ipc_setup.c
-@@ -650,11 +650,12 @@ handle_new_connection(struct qb_ipcs_service *s,
- 		res = -errno;
- 		goto send_response;
- 	}
--	res = chown(c->description, c->auth.uid, c->auth.gid);
--	if (res != 0) {
-+	if (chmod(c->description, 0770)) {
- 		res = -errno;
- 		goto send_response;
- 	}
-+	/* chown can fail because we might not be root */
-+	(void)chown(c->description, c->auth.uid, c->auth.gid);
- 
- 	/* We can't pass just a directory spec to the clients */
- 	strncat(c->description,"/qb", CONNECTION_DESCRIPTION);
diff -Nru libqb-1.0.4/debian/patches/doc-qbarray.h-remove-stray-asterisk.patch libqb-1.0.5/debian/patches/doc-qbarray.h-remove-stray-asterisk.patch
--- libqb-1.0.4/debian/patches/doc-qbarray.h-remove-stray-asterisk.patch	1970-01-01 01:00:00.000000000 +0100
+++ libqb-1.0.5/debian/patches/doc-qbarray.h-remove-stray-asterisk.patch	2019-04-26 15:46:18.000000000 +0200
@@ -0,0 +1,21 @@
+From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
+Date: Fri, 26 Apr 2019 15:45:32 +0200
+Subject: doc: qbarray.h: remove stray asterisk
+
+---
+ include/qb/qbarray.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/qb/qbarray.h b/include/qb/qbarray.h
+index 270b1c2..6c796fe 100644
+--- a/include/qb/qbarray.h
++++ b/include/qb/qbarray.h
+@@ -48,7 +48,7 @@ extern "C" {
+  * @endcode
+  *
+  * Currently, this dynamic array abstract data type can accommodate only
+- * 2^(@c * QB_ARRAY_MAX_INDEX_BITS) elements, and with standard zero-based
++ * 2^@c QB_ARRAY_MAX_INDEX_BITS elements, and with standard zero-based
+  * indexing, this gives a valid index range [0, @c QB_ARRAY_MAX_ELEMENTS),
+  * where the notation denotes the beginning of the interval is included and
+  * the end is excluded.  In other words, client space shall avoid a pitfall
diff -Nru libqb-1.0.4/debian/patches/Errors-are-represented-as-negative-values.patch libqb-1.0.5/debian/patches/Errors-are-represented-as-negative-values.patch
--- libqb-1.0.4/debian/patches/Errors-are-represented-as-negative-values.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Errors-are-represented-as-negative-values.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,27 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Wed, 17 Apr 2019 15:09:42 +0200
-Subject: Errors are represented as negative values
-
----
- lib/ipc_setup.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c
-index f4944cd..14c5e98 100644
---- a/lib/ipc_setup.c
-+++ b/lib/ipc_setup.c
-@@ -647,12 +647,12 @@ handle_new_connection(struct qb_ipcs_service *s,
- 	snprintf(c->description, CONNECTION_DESCRIPTION,
- 		 "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
- 	if (mkdtemp(c->description) == NULL) {
--		res = errno;
-+		res = -errno;
- 		goto send_response;
- 	}
- 	res = chown(c->description, c->auth.uid, c->auth.gid);
- 	if (res != 0) {
--		res = errno;
-+		res = -errno;
- 		goto send_response;
- 	}
- 
diff -Nru libqb-1.0.4/debian/patches/Fix-garbled-Doxygen-markup.patch libqb-1.0.5/debian/patches/Fix-garbled-Doxygen-markup.patch
--- libqb-1.0.4/debian/patches/Fix-garbled-Doxygen-markup.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Fix-garbled-Doxygen-markup.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Tue, 16 Apr 2019 11:16:51 +0200
-Subject: Fix garbled Doxygen markup
-
-Part of d0ec0a6 on the upstream master branch.
----
- include/qb/qbarray.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/include/qb/qbarray.h b/include/qb/qbarray.h
-index 776db04..270b1c2 100644
---- a/include/qb/qbarray.h
-+++ b/include/qb/qbarray.h
-@@ -52,8 +52,8 @@ extern "C" {
-  * indexing, this gives a valid index range [0, @c QB_ARRAY_MAX_ELEMENTS),
-  * where the notation denotes the beginning of the interval is included and
-  * the end is excluded.  In other words, client space shall avoid a pitfall
-- * of relying solely on the type of @max_elements parameter to
-- * @ref qb_array_create and/or of @idx parameter to @ref qb_array_index
-+ * of relying solely on the type of @c max_elements parameter to
-+ * @ref qb_array_create and/or of @c idx parameter to @ref qb_array_index
-  * (these types conflict, anyway).
-  */
- 
diff -Nru libqb-1.0.4/debian/patches/Fix-spelling-plaform-platform.patch libqb-1.0.5/debian/patches/Fix-spelling-plaform-platform.patch
--- libqb-1.0.4/debian/patches/Fix-spelling-plaform-platform.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Fix-spelling-plaform-platform.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Wed, 14 Mar 2018 10:24:20 +0100
-Subject: Fix spelling: plaform -> platform
-
----
- docs/man8/qb-blackbox.8 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/docs/man8/qb-blackbox.8 b/docs/man8/qb-blackbox.8
-index 3df924d..fe07c0d 100644
---- a/docs/man8/qb-blackbox.8
-+++ b/docs/man8/qb-blackbox.8
-@@ -30,7 +30,7 @@ recorded using libqb's blackbox mechanism.
- Due to variations amongst platforms, some of which directly impact
- the libqb's blackbox format handling (e.g. page size), there's currently
- only the commitment that \fBqb-blackbox\fR shall decode the blackbox files
--recorded at the same plaform (plus the same page size) while using libqb
-+recorded at the same platform (plus the same page size) while using libqb
- compiled with the same relevant compile-time options
- (e.g. \fBUSE_CACHE_LINE_ALIGNMENT\fR) as linked to this decoder.
- Otherwise, your mileage may vary.
diff -Nru libqb-1.0.4/debian/patches/hurd-dev-shm-is-a-tmpfs-here-as-well.patch libqb-1.0.5/debian/patches/hurd-dev-shm-is-a-tmpfs-here-as-well.patch
--- libqb-1.0.4/debian/patches/hurd-dev-shm-is-a-tmpfs-here-as-well.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/hurd-dev-shm-is-a-tmpfs-here-as-well.patch	2019-04-26 15:46:18.000000000 +0200
@@ -12,27 +12,27 @@
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c
-index e1de3fc..f4944cd 100644
+index 3f53c4b..062f5da 100644
 --- a/lib/ipc_setup.c
 +++ b/lib/ipc_setup.c
-@@ -643,7 +643,7 @@ handle_new_connection(struct qb_ipcs_service *s,
+@@ -645,7 +645,7 @@ handle_new_connection(struct qb_ipcs_service *s,
  	c->auth.mode = 0600;
  	c->stats.client_pid = ugp->pid;
  
 -#if defined(QB_LINUX) || defined(QB_CYGWIN)
 +#if defined(QB_LINUX) || defined(QB_CYGWIN) || defined(QB_GNU)
- 	snprintf(c->description, CONNECTION_DESCRIPTION,
- 		 "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
- 	if (mkdtemp(c->description) == NULL) {
-@@ -887,7 +887,7 @@ retry_accept:
+ 	desc_len = snprintf(c->description, CONNECTION_DESCRIPTION - sizeof suffix,
+ 			    "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
+ 	if (desc_len < 0) {
+@@ -906,7 +906,7 @@ retry_accept:
  
- void remove_tempdir(const char *name, size_t namelen)
+ void remove_tempdir(const char *name)
  {
 -#if defined(QB_LINUX) || defined(QB_CYGWIN)
 +#if defined(QB_LINUX) || defined(QB_CYGWIN) || defined(QB_GNU)
  	char dirname[PATH_MAX];
- 	char *slash;
- 	memcpy(dirname, name, namelen);
+ 	char *slash = strrchr(name, '/');
+ 
 diff --git a/lib/unix.c b/lib/unix.c
 index 49701a3..643f361 100644
 --- a/lib/unix.c
diff -Nru libqb-1.0.4/debian/patches/Let-remote_tempdir-assume-a-NUL-terminated-name.patch libqb-1.0.5/debian/patches/Let-remote_tempdir-assume-a-NUL-terminated-name.patch
--- libqb-1.0.4/debian/patches/Let-remote_tempdir-assume-a-NUL-terminated-name.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Let-remote_tempdir-assume-a-NUL-terminated-name.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,100 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Thu, 18 Apr 2019 16:06:04 +0200
-Subject: Let remote_tempdir() assume a NUL-terminated name
-
-This is the case already.  We also fix a buffer overflow opportunity in
-the memcpy() call by this change.
----
- lib/ipc_int.h    |  2 +-
- lib/ipc_setup.c  | 11 +++++------
- lib/ipc_shm.c    |  2 +-
- lib/ipc_socket.c |  4 ++--
- lib/ipcs.c       |  2 +-
- 5 files changed, 10 insertions(+), 11 deletions(-)
-
-diff --git a/lib/ipc_int.h b/lib/ipc_int.h
-index 01d1b30..771c477 100644
---- a/lib/ipc_int.h
-+++ b/lib/ipc_int.h
-@@ -207,6 +207,6 @@ int32_t qb_ipc_us_sock_error_is_disconnected(int err);
- 
- int use_filesystem_sockets(void);
- 
--void remove_tempdir(const char *name, size_t namelen);
-+void remove_tempdir(const char *name);
- 
- #endif /* QB_IPC_INT_H_DEFINED */
-diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c
-index 3c41911..062f5da 100644
---- a/lib/ipc_setup.c
-+++ b/lib/ipc_setup.c
-@@ -904,16 +904,15 @@ retry_accept:
- 	return 0;
- }
- 
--void remove_tempdir(const char *name, size_t namelen)
-+void remove_tempdir(const char *name)
- {
- #if defined(QB_LINUX) || defined(QB_CYGWIN) || defined(QB_GNU)
- 	char dirname[PATH_MAX];
--	char *slash;
--	memcpy(dirname, name, namelen);
-+	char *slash = strrchr(name, '/');
- 
--	slash = strrchr(dirname, '/');
--	if (slash) {
--		*slash = '\0';
-+	if (slash && slash - name < sizeof dirname) {
-+		memcpy(dirname, name, slash - name);
-+		dirname[slash - name] = '\0';
- 		/* This gets called more than it needs to be really, so we don't check
- 		 * the return code. It's more of a desperate attempt to clean up after ourself
- 		 * in either the server or client.
-diff --git a/lib/ipc_shm.c b/lib/ipc_shm.c
-index bdd0a0d..41906cb 100644
---- a/lib/ipc_shm.c
-+++ b/lib/ipc_shm.c
-@@ -240,7 +240,7 @@ qb_ipcs_shm_disconnect(struct qb_ipcs_connection *c)
- 		}
- 	}
- 
--	remove_tempdir(c->description, CONNECTION_DESCRIPTION);
-+	remove_tempdir(c->description);
- }
- 
- static int32_t
-diff --git a/lib/ipc_socket.c b/lib/ipc_socket.c
-index 5949232..9692323 100644
---- a/lib/ipc_socket.c
-+++ b/lib/ipc_socket.c
-@@ -376,7 +376,7 @@ qb_ipcc_us_disconnect(struct qb_ipcc_connection *c)
- 	}
- 
- 	/* Last-ditch attempt to tidy up after ourself */
--	remove_tempdir(c->request.u.us.shared_file_name, PATH_MAX);
-+	remove_tempdir(c->request.u.us.shared_file_name);
- 
- 	qb_ipcc_us_sock_close(c->event.u.us.sock);
- 	qb_ipcc_us_sock_close(c->request.u.us.sock);
-@@ -772,7 +772,7 @@ qb_ipcs_us_disconnect(struct qb_ipcs_connection *c)
- 
- 
- 	}
--	remove_tempdir(c->description, CONNECTION_DESCRIPTION);
-+	remove_tempdir(c->description);
- }
- 
- static int32_t
-diff --git a/lib/ipcs.c b/lib/ipcs.c
-index 29f3431..0609e46 100644
---- a/lib/ipcs.c
-+++ b/lib/ipcs.c
-@@ -642,7 +642,7 @@ qb_ipcs_disconnect(struct qb_ipcs_connection *c)
- 				scheduled_retry = 1;
- 			}
- 		}
--		remove_tempdir(c->description, CONNECTION_DESCRIPTION);
-+		remove_tempdir(c->description);
- 		if (scheduled_retry == 0) {
- 			/* This removes the initial alloc ref */
- 			qb_ipcs_connection_unref(c);
diff -Nru libqb-1.0.4/debian/patches/Make-it-impossible-to-truncate-or-overflow-the-connection.patch libqb-1.0.5/debian/patches/Make-it-impossible-to-truncate-or-overflow-the-connection.patch
--- libqb-1.0.4/debian/patches/Make-it-impossible-to-truncate-or-overflow-the-connection.patch	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/Make-it-impossible-to-truncate-or-overflow-the-connection.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,72 +0,0 @@
-From: =?utf-8?q?Ferenc_W=C3=A1gner?= <wferi@debian.org>
-Date: Thu, 18 Apr 2019 14:32:46 +0200
-Subject: Make it impossible to truncate or overflow the connection description
-
-It's hard to predict the length of formatted output, so we'd better
-notice (and abort) if the description is truncated.  Incidentally,
-mkdtemp() does this for us in the shared memory branch, but do an
-explicit check there as well for consistency, and get rid of the wrongly
-parametrized strncat() risking a buffer overflow (CONNECTION_DESCRIPTION
-is not the length of the source "/qb").
-
-Similar truncation checks should be added to qb_ipcs_{shm,us}_connect()
-where they build the request/response names, and possibly to other
-places using snprintf().
----
- lib/ipc_setup.c | 28 +++++++++++++++++++++++-----
- 1 file changed, 23 insertions(+), 5 deletions(-)
-
-diff --git a/lib/ipc_setup.c b/lib/ipc_setup.c
-index 5e04974..3c41911 100644
---- a/lib/ipc_setup.c
-+++ b/lib/ipc_setup.c
-@@ -620,6 +620,8 @@ handle_new_connection(struct qb_ipcs_service *s,
- 	int32_t res2 = 0;
- 	uint32_t max_buffer_size = QB_MAX(req->max_msg_size, s->max_buffer_size);
- 	struct qb_ipc_connection_response response;
-+	const char suffix[] = "/qb";
-+	int desc_len;
- 
- 	c = qb_ipcs_connection_alloc(s);
- 	if (c == NULL) {
-@@ -644,8 +646,16 @@ handle_new_connection(struct qb_ipcs_service *s,
- 	c->stats.client_pid = ugp->pid;
- 
- #if defined(QB_LINUX) || defined(QB_CYGWIN) || defined(QB_GNU)
--	snprintf(c->description, CONNECTION_DESCRIPTION,
--		 "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
-+	desc_len = snprintf(c->description, CONNECTION_DESCRIPTION - sizeof suffix,
-+			    "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
-+	if (desc_len < 0) {
-+		res = -errno;
-+		goto send_response;
-+	}
-+	if (desc_len >= CONNECTION_DESCRIPTION - sizeof suffix) {
-+		res = -ENAMETOOLONG;
-+		goto send_response;
-+	}
- 	if (mkdtemp(c->description) == NULL) {
- 		res = -errno;
- 		goto send_response;
-@@ -658,10 +668,18 @@ handle_new_connection(struct qb_ipcs_service *s,
- 	(void)chown(c->description, c->auth.uid, c->auth.gid);
- 
- 	/* We can't pass just a directory spec to the clients */
--	strncat(c->description,"/qb", CONNECTION_DESCRIPTION);
-+	memcpy(c->description + desc_len, suffix, sizeof suffix);
- #else
--	snprintf(c->description, CONNECTION_DESCRIPTION,
--		 "%d-%d-%d", s->pid, ugp->pid, c->setup.u.us.sock);
-+	desc_len = snprintf(c->description, CONNECTION_DESCRIPTION,
-+			    "%d-%d-%d", s->pid, ugp->pid, c->setup.u.us.sock);
-+	if (desc_len < 0) {
-+		res = -errno;
-+		goto send_response;
-+	}
-+	if (desc_len >= CONNECTION_DESCRIPTION) {
-+		res = -ENAMETOOLONG;
-+		goto send_response;
-+	}
- #endif
- 
- 
diff -Nru libqb-1.0.4/debian/patches/series libqb-1.0.5/debian/patches/series
--- libqb-1.0.4/debian/patches/series	2019-04-18 18:38:07.000000000 +0200
+++ libqb-1.0.5/debian/patches/series	2019-04-26 15:46:18.000000000 +0200
@@ -2,10 +2,5 @@
 hurd-definition-of-PATH_MAX-must-be-included-separately.patch
 tests-always-run-the-SHM-suite-just-expect-failures.patch
 hurd-the-socket-tests-are-expected-to-fail.patch
-Fix-spelling-plaform-platform.patch
 Reduce-stress-test-lengths-to-help-weak-buildds.patch
-Fix-garbled-Doxygen-markup.patch
-Errors-are-represented-as-negative-values.patch
-Allow-group-access-to-the-IPC-directory.patch
-Make-it-impossible-to-truncate-or-overflow-the-connection.patch
-Let-remote_tempdir-assume-a-NUL-terminated-name.patch
+doc-qbarray.h-remove-stray-asterisk.patch
diff -Nru libqb-1.0.4/docs/common.dox libqb-1.0.5/docs/common.dox
--- libqb-1.0.4/docs/common.dox	2019-04-12 10:30:51.000000000 +0200
+++ libqb-1.0.5/docs/common.dox	2019-04-25 10:29:59.000000000 +0200
@@ -38,7 +38,7 @@
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = 1.0.4
+PROJECT_NUMBER         = 1.0.5
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a
diff -Nru libqb-1.0.4/docs/man3/qbarray.h.3 libqb-1.0.5/docs/man3/qbarray.h.3
--- libqb-1.0.4/docs/man3/qbarray.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbarray.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbarray.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbarray.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
@@ -92,7 +92,7 @@
 .fi
 .PP
 .PP
-Currently, this dynamic array abstract data type can accommodate only 2^(\fC*\fP QB_ARRAY_MAX_INDEX_BITS) elements, and with standard zero-based indexing, this gives a valid index range [0, \fCQB_ARRAY_MAX_ELEMENTS\fP), where the notation denotes the beginning of the interval is included and the end is excluded\&. In other words, client space shall avoid a pitfall of relying solely on the type of  parameter to \fBqb_array_create\fP and/or of  parameter to \fBqb_array_index\fP (these types conflict, anyway)\&. 
+Currently, this dynamic array abstract data type can accommodate only 2^(\fC*\fP QB_ARRAY_MAX_INDEX_BITS) elements, and with standard zero-based indexing, this gives a valid index range [0, \fCQB_ARRAY_MAX_ELEMENTS\fP), where the notation denotes the beginning of the interval is included and the end is excluded\&. In other words, client space shall avoid a pitfall of relying solely on the type of \fCmax_elements\fP parameter to \fBqb_array_create\fP and/or of \fCidx\fP parameter to \fBqb_array_index\fP (these types conflict, anyway)\&. 
 .SH "Macro Definition Documentation"
 .PP 
 .SS "#define QB_ARRAY_MAX_ELEMENTS   (1 << \fBQB_ARRAY_MAX_INDEX_BITS\fP)"
diff -Nru libqb-1.0.4/docs/man3/qbatomic.h.3 libqb-1.0.5/docs/man3/qbatomic.h.3
--- libqb-1.0.4/docs/man3/qbatomic.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbatomic.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbatomic.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbatomic.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbdefs.h.3 libqb-1.0.5/docs/man3/qbdefs.h.3
--- libqb-1.0.4/docs/man3/qbdefs.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbdefs.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbdefs.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbdefs.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbhdb.h.3 libqb-1.0.5/docs/man3/qbhdb.h.3
--- libqb-1.0.4/docs/man3/qbhdb.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbhdb.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbhdb.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbhdb.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbipcc.h.3 libqb-1.0.5/docs/man3/qbipcc.h.3
--- libqb-1.0.4/docs/man3/qbipcc.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbipcc.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbipcc.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbipcc.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbipc_common.h.3 libqb-1.0.5/docs/man3/qbipc_common.h.3
--- libqb-1.0.4/docs/man3/qbipc_common.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbipc_common.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbipc_common.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbipc_common.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbipcs.h.3 libqb-1.0.5/docs/man3/qbipcs.h.3
--- libqb-1.0.4/docs/man3/qbipcs.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbipcs.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbipcs.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbipcs.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qblist.h.3 libqb-1.0.5/docs/man3/qblist.h.3
--- libqb-1.0.4/docs/man3/qblist.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qblist.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qblist.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qblist.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qblog.h.3 libqb-1.0.5/docs/man3/qblog.h.3
--- libqb-1.0.4/docs/man3/qblog.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qblog.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qblog.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qblog.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbloop.h.3 libqb-1.0.5/docs/man3/qbloop.h.3
--- libqb-1.0.4/docs/man3/qbloop.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbloop.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbloop.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbloop.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbmap.h.3 libqb-1.0.5/docs/man3/qbmap.h.3
--- libqb-1.0.4/docs/man3/qbmap.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbmap.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbmap.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbmap.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbrb.h.3 libqb-1.0.5/docs/man3/qbrb.h.3
--- libqb-1.0.4/docs/man3/qbrb.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbrb.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbrb.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbrb.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man3/qbutil.h.3 libqb-1.0.5/docs/man3/qbutil.h.3
--- libqb-1.0.4/docs/man3/qbutil.h.3	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/docs/man3/qbutil.h.3	2019-04-25 10:30:00.000000000 +0200
@@ -1,4 +1,4 @@
-.TH "qbutil.h" 3 "Fri Apr 12 2019" "Version 1.0.4" "libqb" \" -*- nroff -*-
+.TH "qbutil.h" 3 "Thu Apr 25 2019" "Version 1.0.5" "libqb" \" -*- nroff -*-
 .ad l
 .nh
 .SH NAME
diff -Nru libqb-1.0.4/docs/man8/qb-blackbox.8 libqb-1.0.5/docs/man8/qb-blackbox.8
--- libqb-1.0.4/docs/man8/qb-blackbox.8	2019-04-09 11:29:39.000000000 +0200
+++ libqb-1.0.5/docs/man8/qb-blackbox.8	2019-04-23 16:25:10.000000000 +0200
@@ -30,7 +30,7 @@
 Due to variations amongst platforms, some of which directly impact
 the libqb's blackbox format handling (e.g. page size), there's currently
 only the commitment that \fBqb-blackbox\fR shall decode the blackbox files
-recorded at the same plaform (plus the same page size) while using libqb
+recorded at the same platform (plus the same page size) while using libqb
 compiled with the same relevant compile-time options
 (e.g. \fBUSE_CACHE_LINE_ALIGNMENT\fR) as linked to this decoder.
 Otherwise, your mileage may vary.
diff -Nru libqb-1.0.4/include/qb/qbarray.h libqb-1.0.5/include/qb/qbarray.h
--- libqb-1.0.4/include/qb/qbarray.h	2019-04-09 11:29:39.000000000 +0200
+++ libqb-1.0.5/include/qb/qbarray.h	2019-04-23 16:25:10.000000000 +0200
@@ -52,8 +52,8 @@
  * indexing, this gives a valid index range [0, @c QB_ARRAY_MAX_ELEMENTS),
  * where the notation denotes the beginning of the interval is included and
  * the end is excluded.  In other words, client space shall avoid a pitfall
- * of relying solely on the type of @max_elements parameter to
- * @ref qb_array_create and/or of @idx parameter to @ref qb_array_index
+ * of relying solely on the type of @c max_elements parameter to
+ * @ref qb_array_create and/or of @c idx parameter to @ref qb_array_index
  * (these types conflict, anyway).
  */
 
diff -Nru libqb-1.0.4/include/qb/qbconfig.h libqb-1.0.5/include/qb/qbconfig.h
--- libqb-1.0.4/include/qb/qbconfig.h	2019-04-12 10:30:51.000000000 +0200
+++ libqb-1.0.5/include/qb/qbconfig.h	2019-04-25 10:29:59.000000000 +0200
@@ -39,7 +39,7 @@
    but that was only introduced after v1.0.2 */
 #define QB_VER_MAJOR 1
 #define QB_VER_MINOR 0
-#define QB_VER_MICRO 4
+#define QB_VER_MICRO 5
 #define QB_VER_REST ""
 
 #define QB_VER_STR   \
diff -Nru libqb-1.0.4/lib/ipc_int.h libqb-1.0.5/lib/ipc_int.h
--- libqb-1.0.4/lib/ipc_int.h	2019-04-09 11:30:00.000000000 +0200
+++ libqb-1.0.5/lib/ipc_int.h	2019-04-23 16:25:10.000000000 +0200
@@ -207,6 +207,6 @@
 
 int use_filesystem_sockets(void);
 
-void remove_tempdir(const char *name, size_t namelen);
+void remove_tempdir(const char *name);
 
 #endif /* QB_IPC_INT_H_DEFINED */
diff -Nru libqb-1.0.4/lib/ipcs.c libqb-1.0.5/lib/ipcs.c
--- libqb-1.0.4/lib/ipcs.c	2019-04-09 11:30:00.000000000 +0200
+++ libqb-1.0.5/lib/ipcs.c	2019-04-23 16:25:10.000000000 +0200
@@ -642,7 +642,7 @@
 				scheduled_retry = 1;
 			}
 		}
-		remove_tempdir(c->description, CONNECTION_DESCRIPTION);
+		remove_tempdir(c->description);
 		if (scheduled_retry == 0) {
 			/* This removes the initial alloc ref */
 			qb_ipcs_connection_unref(c);
diff -Nru libqb-1.0.4/lib/ipc_setup.c libqb-1.0.5/lib/ipc_setup.c
--- libqb-1.0.4/lib/ipc_setup.c	2019-04-09 11:30:00.000000000 +0200
+++ libqb-1.0.5/lib/ipc_setup.c	2019-04-23 16:25:10.000000000 +0200
@@ -620,6 +620,8 @@
 	int32_t res2 = 0;
 	uint32_t max_buffer_size = QB_MAX(req->max_msg_size, s->max_buffer_size);
 	struct qb_ipc_connection_response response;
+	const char suffix[] = "/qb";
+	int desc_len;
 
 	c = qb_ipcs_connection_alloc(s);
 	if (c == NULL) {
@@ -644,23 +646,40 @@
 	c->stats.client_pid = ugp->pid;
 
 #if defined(QB_LINUX) || defined(QB_CYGWIN)
-	snprintf(c->description, CONNECTION_DESCRIPTION,
-		 "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
+	desc_len = snprintf(c->description, CONNECTION_DESCRIPTION - sizeof suffix,
+			    "/dev/shm/qb-%d-%d-%d-XXXXXX", s->pid, ugp->pid, c->setup.u.us.sock);
+	if (desc_len < 0) {
+		res = -errno;
+		goto send_response;
+	}
+	if (desc_len >= CONNECTION_DESCRIPTION - sizeof suffix) {
+		res = -ENAMETOOLONG;
+		goto send_response;
+	}
 	if (mkdtemp(c->description) == NULL) {
-		res = errno;
+		res = -errno;
 		goto send_response;
 	}
-	res = chown(c->description, c->auth.uid, c->auth.gid);
-	if (res != 0) {
-		res = errno;
+	if (chmod(c->description, 0770)) {
+		res = -errno;
 		goto send_response;
 	}
+	/* chown can fail because we might not be root */
+	(void)chown(c->description, c->auth.uid, c->auth.gid);
 
 	/* We can't pass just a directory spec to the clients */
-	strncat(c->description,"/qb", CONNECTION_DESCRIPTION);
+	memcpy(c->description + desc_len, suffix, sizeof suffix);
 #else
-	snprintf(c->description, CONNECTION_DESCRIPTION,
-		 "%d-%d-%d", s->pid, ugp->pid, c->setup.u.us.sock);
+	desc_len = snprintf(c->description, CONNECTION_DESCRIPTION,
+			    "%d-%d-%d", s->pid, ugp->pid, c->setup.u.us.sock);
+	if (desc_len < 0) {
+		res = -errno;
+		goto send_response;
+	}
+	if (desc_len >= CONNECTION_DESCRIPTION) {
+		res = -ENAMETOOLONG;
+		goto send_response;
+	}
 #endif
 
 
@@ -885,16 +904,15 @@
 	return 0;
 }
 
-void remove_tempdir(const char *name, size_t namelen)
+void remove_tempdir(const char *name)
 {
 #if defined(QB_LINUX) || defined(QB_CYGWIN)
 	char dirname[PATH_MAX];
-	char *slash;
-	memcpy(dirname, name, namelen);
+	char *slash = strrchr(name, '/');
 
-	slash = strrchr(dirname, '/');
-	if (slash) {
-		*slash = '\0';
+	if (slash && slash - name < sizeof dirname) {
+		memcpy(dirname, name, slash - name);
+		dirname[slash - name] = '\0';
 		/* This gets called more than it needs to be really, so we don't check
 		 * the return code. It's more of a desperate attempt to clean up after ourself
 		 * in either the server or client.
diff -Nru libqb-1.0.4/lib/ipc_shm.c libqb-1.0.5/lib/ipc_shm.c
--- libqb-1.0.4/lib/ipc_shm.c	2019-04-09 11:33:06.000000000 +0200
+++ libqb-1.0.5/lib/ipc_shm.c	2019-04-23 16:25:10.000000000 +0200
@@ -240,7 +240,7 @@
 		}
 	}
 
-	remove_tempdir(c->description, CONNECTION_DESCRIPTION);
+	remove_tempdir(c->description);
 }
 
 static int32_t
diff -Nru libqb-1.0.4/lib/ipc_socket.c libqb-1.0.5/lib/ipc_socket.c
--- libqb-1.0.4/lib/ipc_socket.c	2019-04-09 11:30:00.000000000 +0200
+++ libqb-1.0.5/lib/ipc_socket.c	2019-04-23 16:25:10.000000000 +0200
@@ -376,7 +376,7 @@
 	}
 
 	/* Last-ditch attempt to tidy up after ourself */
-	remove_tempdir(c->request.u.us.shared_file_name, PATH_MAX);
+	remove_tempdir(c->request.u.us.shared_file_name);
 
 	qb_ipcc_us_sock_close(c->event.u.us.sock);
 	qb_ipcc_us_sock_close(c->request.u.us.sock);
@@ -772,7 +772,7 @@
 
 
 	}
-	remove_tempdir(c->description, CONNECTION_DESCRIPTION);
+	remove_tempdir(c->description);
 }
 
 static int32_t
diff -Nru libqb-1.0.4/lib/Makefile.am libqb-1.0.5/lib/Makefile.am
--- libqb-1.0.4/lib/Makefile.am	2019-04-12 10:21:59.000000000 +0200
+++ libqb-1.0.5/lib/Makefile.am	2019-04-25 09:56:22.000000000 +0200
@@ -30,7 +30,7 @@
 
 lib_LTLIBRARIES		= libqb.la
 
-libqb_la_LDFLAGS	= -version-info 19:1:19
+libqb_la_LDFLAGS	= -version-info 19:2:19
 
 source_to_lint		= util.c hdb.c ringbuffer.c ringbuffer_helper.c \
 			  array.c loop.c loop_poll.c loop_job.c \
diff -Nru libqb-1.0.4/lib/Makefile.in libqb-1.0.5/lib/Makefile.in
--- libqb-1.0.4/lib/Makefile.in	2019-04-12 10:30:40.000000000 +0200
+++ libqb-1.0.5/lib/Makefile.in	2019-04-25 10:29:48.000000000 +0200
@@ -592,7 +592,7 @@
 
 AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include
 lib_LTLIBRARIES = libqb.la
-libqb_la_LDFLAGS = -version-info 19:1:19
+libqb_la_LDFLAGS = -version-info 19:2:19
 source_to_lint = util.c hdb.c ringbuffer.c ringbuffer_helper.c \
 			  array.c loop.c loop_poll.c loop_job.c \
 			  loop_timerlist.c ipcc.c ipcs.c ipc_shm.c \
diff -Nru libqb-1.0.4/.tarball-version libqb-1.0.5/.tarball-version
--- libqb-1.0.4/.tarball-version	2019-04-12 10:30:53.000000000 +0200
+++ libqb-1.0.5/.tarball-version	2019-04-25 10:30:00.000000000 +0200
@@ -1 +1 @@
-1.0.4
+1.0.5
diff -Nru libqb-1.0.4/.version libqb-1.0.5/.version
--- libqb-1.0.4/.version	2019-04-12 10:30:52.000000000 +0200
+++ libqb-1.0.5/.version	2019-04-25 10:29:59.000000000 +0200
@@ -1 +1 @@
-1.0.4
+1.0.5

All in all, the point of this upload is synchronizing our version
numbers with upstream.  Thanks for your consideration.

unblock libqb/1.0.5-1

Reply to: