summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/libqb/Makefile4
-rw-r--r--package/libqb/patches/patch-Makefile_in11
-rw-r--r--package/libqb/patches/patch-docs_man3_qbarray_h_3106
-rw-r--r--package/libqb/patches/patch-docs_man3_qbatomic_h_3157
-rw-r--r--package/libqb/patches/patch-docs_man3_qbhdb_h_3165
-rw-r--r--package/libqb/patches/patch-docs_man3_qbipc_common_h_367
-rw-r--r--package/libqb/patches/patch-docs_man3_qbipcc_h_3167
-rw-r--r--package/libqb/patches/patch-docs_man3_qbipcs_h_3383
-rw-r--r--package/libqb/patches/patch-docs_man3_qblist_h_3248
-rw-r--r--package/libqb/patches/patch-docs_man3_qblog_h_3649
-rw-r--r--package/libqb/patches/patch-docs_man3_qbloop_h_3222
-rw-r--r--package/libqb/patches/patch-docs_man3_qbmap_h_3261
-rw-r--r--package/libqb/patches/patch-docs_man3_qbutil_h_3284
13 files changed, 2722 insertions, 2 deletions
diff --git a/package/libqb/Makefile b/package/libqb/Makefile
index 6a3ddb3f2..a2d897bcd 100644
--- a/package/libqb/Makefile
+++ b/package/libqb/Makefile
@@ -4,9 +4,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:= libqb
-PKG_VERSION:= 0.14.1
+PKG_VERSION:= 0.16.0
PKG_RELEASE:= 1
-PKG_MD5SUM:= c144a5e0cd5b69c8d46a051646609f11
+PKG_MD5SUM:= 88a256ce5217efa420598ade393879ff
PKG_DESCR:= high performance client server reusable features
PKG_SECTION:= libs
PKG_URL:= https://github.com/asalkeld/libqb/wiki#wiki-Releases
diff --git a/package/libqb/patches/patch-Makefile_in b/package/libqb/patches/patch-Makefile_in
new file mode 100644
index 000000000..f73094833
--- /dev/null
+++ b/package/libqb/patches/patch-Makefile_in
@@ -0,0 +1,11 @@
+--- libqb-0.16.0.orig/Makefile.in 2013-07-25 20:16:10.000000000 +0200
++++ libqb-0.16.0/Makefile.in 2013-09-09 06:26:09.718825909 +0200
+@@ -352,7 +352,7 @@ MAINTAINERCLEANFILES = Makefile.in acloc
+
+ ACLOCAL_AMFLAGS = -I m4
+ dist_doc_DATA = COPYING INSTALL README.markdown
+-SUBDIRS = include lib docs tools tests examples
++SUBDIRS = include lib docs tools
+ RPMBUILDOPTS = --define "_sourcedir $(abs_builddir)" \
+ --define "_specdir $(abs_builddir)" \
+ --define "_builddir $(abs_builddir)" \
diff --git a/package/libqb/patches/patch-docs_man3_qbarray_h_3 b/package/libqb/patches/patch-docs_man3_qbarray_h_3
new file mode 100644
index 000000000..b3159f602
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbarray_h_3
@@ -0,0 +1,106 @@
+--- libqb-0.16.0.orig/docs/man3/qbarray.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbarray.h.3 2013-09-09 05:26:31.375811771 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbarray.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbarray.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -69,28 +69,25 @@ This is a dynamic array (it can grow, bu
+
+ .PP
+ .nf
+-arr = qb_array_create_2(64, sizeof(struct my_struct), 256);
+-\&.\&.\&.
+-res = qb_array_index(arr, idx, (void**)&my_ptr);
+-if (res < 0) {
+- return res;
+-}
+-// use my_ptr, now even if there is a grow, this pointer will be valid\&.
++ arr = qb_array_create_2(64, sizeof(struct my_struct), 256);
++ \&.\&.\&.
++ res = qb_array_index(arr, idx, (void**)&my_ptr);
++ if (res < 0) {
++ return res;
++ }
++ // use my_ptr, now even if there is a grow, this pointer will be valid\&.
+ .fi
+ .PP
+
+ .SH "Typedef Documentation"
+ .PP
+-.SS "typedef void(* qb_array_new_bin_cb_fn)(\fBqb_array_t\fP *a, uint32_t bin)"
+-
++.SS "typedef void(* \fBqb_array_new_bin_cb_fn\fP)(\fBqb_array_t\fP *a, uint32_t bin)"
+ .SS "typedef struct qb_array \fBqb_array_t\fP"
+-
+ .PP
+ This is an opaque data type representing an instance of an array\&.
+ .SH "Function Documentation"
+ .PP
+-.SS "\fBqb_array_t\fP* qb_array_create (size_tmax_elements, size_telement_size)"
+-
++.SS "\fBqb_array_t\fP* \fBqb_array_create\fP (size_tmax_elements, size_telement_size)"
+ .PP
+ Create an array with fixed sized elements\&. \fBParameters:\fP
+ .RS 4
+@@ -105,8 +102,7 @@ array instance\&.
+ .RE
+ .PP
+
+-.SS "\fBqb_array_t\fP* qb_array_create_2 (size_tmax_elements, size_telement_size, size_tautogrow_elements)"
+-
++.SS "\fBqb_array_t\fP* \fBqb_array_create_2\fP (size_tmax_elements, size_telement_size, size_tautogrow_elements)"
+ .PP
+ Create an array with fixed sized elements\&. \fBParameters:\fP
+ .RS 4
+@@ -123,12 +119,10 @@ array instance\&.
+ .RE
+ .PP
+
+-.SS "size_t qb_array_elems_per_bin_get (\fBqb_array_t\fP *a)"
+-
++.SS "size_t \fBqb_array_elems_per_bin_get\fP (\fBqb_array_t\fP *a)"
+ .PP
+ Get the number of elements per bin\&.
+-.SS "void qb_array_free (\fBqb_array_t\fP *a)"
+-
++.SS "void \fBqb_array_free\fP (\fBqb_array_t\fP *a)"
+ .PP
+ Free all the memory used by the array\&. \fBParameters:\fP
+ .RS 4
+@@ -136,8 +130,7 @@ Free all the memory used by the array\&.
+ .RE
+ .PP
+
+-.SS "int32_t qb_array_grow (\fBqb_array_t\fP *a, size_tmax_elements)"
+-
++.SS "int32_t \fBqb_array_grow\fP (\fBqb_array_t\fP *a, size_tmax_elements)"
+ .PP
+ Grow the array\&. \fBParameters:\fP
+ .RS 4
+@@ -152,8 +145,7 @@ Grow the array\&. \fBParameters:\fP
+ .RE
+ .PP
+
+-.SS "int32_t qb_array_index (\fBqb_array_t\fP *a, int32_tidx, void **element_out)"
+-
++.SS "int32_t \fBqb_array_index\fP (\fBqb_array_t\fP *a, int32_tidx, void **element_out)"
+ .PP
+ Get an element at a particular index\&. \fBParameters:\fP
+ .RS 4
+@@ -170,12 +162,10 @@ Get an element at a particular index\&.
+ .RE
+ .PP
+
+-.SS "int32_t qb_array_new_bin_cb_set (\fBqb_array_t\fP *a, \fBqb_array_new_bin_cb_fn\fPfn)"
+-
++.SS "int32_t \fBqb_array_new_bin_cb_set\fP (\fBqb_array_t\fP *a, \fBqb_array_new_bin_cb_fn\fPfn)"
+ .PP
+ Get a callback when a new bin is allocated\&.
+-.SS "size_t qb_array_num_bins_get (\fBqb_array_t\fP *a)"
+-
++.SS "size_t \fBqb_array_num_bins_get\fP (\fBqb_array_t\fP *a)"
+ .PP
+ Get the number of bins used or the array\&.
+ .SH "Author"
diff --git a/package/libqb/patches/patch-docs_man3_qbatomic_h_3 b/package/libqb/patches/patch-docs_man3_qbatomic_h_3
new file mode 100644
index 000000000..f41ad1f02
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbatomic_h_3
@@ -0,0 +1,157 @@
+--- libqb-0.16.0.orig/docs/man3/qbatomic.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbatomic.h.3 2013-09-09 05:26:31.415811269 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbatomic.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbatomic.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -16,7 +16,7 @@ Basic atomic integer and pointer operati
+ \fC#include <qb/qbconfig\&.h>\fP
+ .br
+
+-.SS "Macros"
++.SS "Defines"
+
+ .in +1c
+ .ti -1c
+@@ -92,10 +92,9 @@ You must not directly read integers or p
+ If you are using those functions for anything apart from simple reference counting, you should really be aware of the implications of doing that\&. There are literally thousands of ways to shoot yourself in the foot\&. So if in doubt, use a pthread_mutex\&. If you don't know, what memory barriers are, do not use anything but \fBqb_atomic_int_inc()\fP and \fBqb_atomic_int_dec_and_test()\fP\&.
+ .PP
+ It is not safe to set an integer or pointer just by assigning to it, when it is concurrently accessed by other threads with the following functions\&. Use \fBqb_atomic_int_compare_and_exchange()\fP or \fBqb_atomic_pointer_compare_and_exchange()\fP respectively\&.
+-.SH "Macro Definition Documentation"
++.SH "Define Documentation"
+ .PP
+-.SS "#define qb_atomic_int_dec_and_test(atomic) (\fBqb_atomic_int_exchange_and_add\fP ((atomic), -1) == 1)"
+-
++.SS "#define \fBqb_atomic_int_dec_and_test\fP(atomic) (\fBqb_atomic_int_exchange_and_add\fP ((atomic), -1) == 1)"
+ .PP
+ Atomically decrements the integer pointed to by atomic by 1\&. \fBParameters:\fP
+ .RS 4
+@@ -108,15 +107,13 @@ QB_TRUE if the integer pointed to by ato
+ .RE
+ .PP
+
+-.SS "#define qb_atomic_int_get(atomic)"
+-\fBValue:\fP
++.SS "#define \fBqb_atomic_int_get\fP(atomic)"\fBValue:\fP
+ .PP
+ .nf
+ ((void) sizeof (char* [sizeof (*(atomic)) == sizeof (int32_t) ? 1 : -1]), \
+ (qb_atomic_int_get) ((volatile int32_t QB_GNUC_MAY_ALIAS *) (volatile void *) (atomic)))
+ .fi
+-.SS "#define qb_atomic_int_inc(atomic) (\fBqb_atomic_int_add\fP ((atomic), 1))"
+-
++.SS "#define \fBqb_atomic_int_inc\fP(atomic) (\fBqb_atomic_int_add\fP ((atomic), 1))"
+ .PP
+ Atomically increments the integer pointed to by atomic by 1\&. \fBParameters:\fP
+ .RS 4
+@@ -124,22 +121,19 @@ Atomically increments the integer pointe
+ .RE
+ .PP
+
+-.SS "#define qb_atomic_int_set(atomic, newval)"
+-\fBValue:\fP
++.SS "#define \fBqb_atomic_int_set\fP(atomic, newval)"\fBValue:\fP
+ .PP
+ .nf
+ ((void) sizeof (char* [sizeof (*(atomic)) == sizeof (int32_t) ? 1 : -1]), \
+ (qb_atomic_int_set) ((volatile int32_t QB_GNUC_MAY_ALIAS *) (volatile void *) (atomic), (newval)))
+ .fi
+-.SS "#define qb_atomic_pointer_get(atomic)"
+-\fBValue:\fP
++.SS "#define \fBqb_atomic_pointer_get\fP(atomic)"\fBValue:\fP
+ .PP
+ .nf
+ ((void) sizeof (char* [sizeof (*(atomic)) == sizeof (void*) ? 1 : -1]), \
+ (qb_atomic_pointer_get) ((volatile void* QB_GNUC_MAY_ALIAS *) (volatile void *) (atomic)))
+ .fi
+-.SS "#define qb_atomic_pointer_set(atomic, newval)"
+-\fBValue:\fP
++.SS "#define \fBqb_atomic_pointer_set\fP(atomic, newval)"\fBValue:\fP
+ .PP
+ .nf
+ ((void) sizeof (char* [sizeof (*(atomic)) == sizeof (void*) ? 1 : -1]), \
+@@ -147,10 +141,8 @@ Atomically increments the integer pointe
+ .fi
+ .SH "Function Documentation"
+ .PP
+-.SS "void qb_atomic_init (void)"
+-
+-.SS "void qb_atomic_int_add (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tval)"
+-
++.SS "void \fBqb_atomic_init\fP (void)"
++.SS "void \fBqb_atomic_int_add\fP (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tval)"
+ .PP
+ Atomically adds val to the integer pointed to by atomic\&. Also acts as a memory barrier\&.
+ .PP
+@@ -162,8 +154,7 @@ Atomically adds val to the integer point
+ .RE
+ .PP
+
+-.SS "int32_t qb_atomic_int_compare_and_exchange (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_toldval, int32_tnewval)"
+-
++.SS "int32_t \fBqb_atomic_int_compare_and_exchange\fP (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_toldval, int32_tnewval)"
+ .PP
+ Compares oldval with the integer pointed to by atomic and if they are equal, atomically exchanges *atomic with newval\&. Also acts as a memory barrier\&.
+ .PP
+@@ -182,8 +173,7 @@ QB_TRUE, if *atomic was equal oldval\&.
+ .RE
+ .PP
+
+-.SS "int32_t qb_atomic_int_exchange_and_add (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tval)"
+-
++.SS "int32_t \fBqb_atomic_int_exchange_and_add\fP (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tval)"
+ .PP
+ Atomically adds val to the integer pointed to by atomic\&. It returns the value of *atomic just before the addition took place\&. Also acts as a memory barrier\&.
+ .PP
+@@ -200,8 +190,7 @@ the value of *atomic before the addition
+ .RE
+ .PP
+
+-.SS "int32_t qb_atomic_int_get (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic)"
+-
++.SS "int32_t \fBqb_atomic_int_get\fP (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic)"
+ .PP
+ Reads the value of the integer pointed to by atomic\&. Also acts as a memory barrier\&.
+ .PP
+@@ -216,8 +205,7 @@ the value of atomic
+ .RE
+ .PP
+
+-.SS "void qb_atomic_int_set (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tnewval)"
+-
++.SS "void \fBqb_atomic_int_set\fP (volatile int32_t \fBQB_GNUC_MAY_ALIAS\fP *atomic, int32_tnewval)"
+ .PP
+ Sets the value of the integer pointed to by atomic\&. Also acts as a memory barrier\&.
+ .PP
+@@ -229,8 +217,7 @@ Sets the value of the integer pointed to
+ .RE
+ .PP
+
+-.SS "int32_t qb_atomic_pointer_compare_and_exchange (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic, void *oldval, void *newval)"
+-
++.SS "int32_t \fBqb_atomic_pointer_compare_and_exchange\fP (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic, void *oldval, void *newval)"
+ .PP
+ Compares oldval with the pointer pointed to by atomic and if they are equal, atomically exchanges *atomic with newval\&. Also acts as a memory barrier\&.
+ .PP
+@@ -249,8 +236,7 @@ QB_TRUE if atomic was equal oldval, else
+ .RE
+ .PP
+
+-.SS "void* qb_atomic_pointer_get (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic)"
+-
++.SS "void* \fBqb_atomic_pointer_get\fP (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic)"
+ .PP
+ Reads the value of the pointer pointed to by atomic\&. Also acts as a memory barrier\&.
+ .PP
+@@ -265,8 +251,7 @@ the value to add to atomic\&.
+ .RE
+ .PP
+
+-.SS "void qb_atomic_pointer_set (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic, void *newval)"
+-
++.SS "void \fBqb_atomic_pointer_set\fP (volatile void *\fBQB_GNUC_MAY_ALIAS\fP *atomic, void *newval)"
+ .PP
+ Sets the value of the pointer pointed to by atomic\&. Also acts as a memory barrier\&.
+ .PP
diff --git a/package/libqb/patches/patch-docs_man3_qbhdb_h_3 b/package/libqb/patches/patch-docs_man3_qbhdb_h_3
new file mode 100644
index 000000000..91a3ae198
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbhdb_h_3
@@ -0,0 +1,165 @@
+--- libqb-0.16.0.orig/docs/man3/qbhdb.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbhdb.h.3 2013-09-09 05:26:31.447810868 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbhdb.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbhdb.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -28,7 +28,7 @@ The handle database is for reference cou
+ .RI "struct \fBqb_hdb\fP"
+ .br
+ .in -1c
+-.SS "Macros"
++.SS "Defines"
+
+ .in +1c
+ .ti -1c
+@@ -108,14 +108,11 @@ The handle database is for reference cou
+ The handle database is for reference counting objects\&.
+
+
+-.SH "Macro Definition Documentation"
++.SH "Define Documentation"
+ .PP
+-.SS "#define _GNU_SOURCE"
+-
+-.SS "#define QB_HDB_D_FORMAT '%'PRIu64"
+-
+-.SS "#define QB_HDB_DECLARE(database_name, destructor_function)"
+-\fBValue:\fP
++.SS "#define \fB_GNU_SOURCE\fP"
++.SS "#define \fBQB_HDB_D_FORMAT\fP '%'PRIu64"
++.SS "#define \fBQB_HDB_DECLARE\fP(database_name, destructor_function)"\fBValue:\fP
+ .PP
+ .nf
+ static struct qb_hdb (database_name) = { \
+@@ -129,24 +126,20 @@ static struct qb_hdb (database_name) = {
+ .PP
+ Convience macro for declaring a file scoped handle database\&. .PP
+ .nf
+-QB_HDB_DECLARE(my_handle_database, NULL);
++ QB_HDB_DECLARE(my_handle_database, NULL);
+ .fi
+ .PP
+
+-.SS "#define QB_HDB_X_FORMAT '%'PRIx64"
+-
++.SS "#define \fBQB_HDB_X_FORMAT\fP '%'PRIx64"
+ .SH "Typedef Documentation"
+ .PP
+ .SS "typedef uint64_t \fBqb_handle_t\fP"
+-
+ .PP
+ Generic handle type is 64 bits\&.
+ .SH "Function Documentation"
+ .PP
+-.SS "uint32_t qb_hdb_base_convert (\fBqb_handle_t\fPhandle)"
+-
+-.SS "void qb_hdb_create (struct \fBqb_hdb\fP *hdb)"
+-
++.SS "uint32_t \fBqb_hdb_base_convert\fP (\fBqb_handle_t\fPhandle)"
++.SS "void \fBqb_hdb_create\fP (struct \fBqb_hdb\fP *hdb)"
+ .PP
+ Create a new database\&. \fBParameters:\fP
+ .RS 4
+@@ -154,8 +147,7 @@ Create a new database\&. \fBParameters:\
+ .RE
+ .PP
+
+-.SS "void qb_hdb_destroy (struct \fBqb_hdb\fP *hdb)"
+-
++.SS "void \fBqb_hdb_destroy\fP (struct \fBqb_hdb\fP *hdb)"
+ .PP
+ Destroy a handle database\&. \fBParameters:\fP
+ .RS 4
+@@ -163,8 +155,7 @@ Destroy a handle database\&. \fBParamete
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_create (struct \fBqb_hdb\fP *hdb, int32_tinstance_size, \fBqb_handle_t\fP *handle_id_out)"
+-
++.SS "int32_t \fBqb_hdb_handle_create\fP (struct \fBqb_hdb\fP *hdb, int32_tinstance_size, \fBqb_handle_t\fP *handle_id_out)"
+ .PP
+ Create a new handle\&. \fBParameters:\fP
+ .RS 4
+@@ -181,8 +172,7 @@ Create a new handle\&. \fBParameters:\fP
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_destroy (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+-
++.SS "int32_t \fBqb_hdb_handle_destroy\fP (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+ .PP
+ Request the destruction of the object\&. When the refcount is 0, it will be destroyed\&.
+ .PP
+@@ -199,8 +189,7 @@ Request the destruction of the object\&.
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_get (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in, void **instance)"
+-
++.SS "int32_t \fBqb_hdb_handle_get\fP (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in, void **instance)"
+ .PP
+ Get the instance associated with this handle and increase it's refcount\&. \fBParameters:\fP
+ .RS 4
+@@ -217,8 +206,7 @@ Get the instance associated with this ha
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_get_always (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in, void **instance)"
+-
++.SS "int32_t \fBqb_hdb_handle_get_always\fP (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in, void **instance)"
+ .PP
+ Get the instance associated with this handle and increase it's refcount\&. \fBParameters:\fP
+ .RS 4
+@@ -235,8 +223,7 @@ Get the instance associated with this ha
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_put (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+-
++.SS "int32_t \fBqb_hdb_handle_put\fP (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+ .PP
+ Put the instance associated with this handle and decrease it's refcount\&. \fBParameters:\fP
+ .RS 4
+@@ -251,8 +238,7 @@ Put the instance associated with this ha
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_handle_refcount_get (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+-
++.SS "int32_t \fBqb_hdb_handle_refcount_get\fP (struct \fBqb_hdb\fP *hdb, \fBqb_handle_t\fPhandle_in)"
+ .PP
+ Get the current refcount\&. \fBParameters:\fP
+ .RS 4
+@@ -267,8 +253,7 @@ Get the current refcount\&. \fBParameter
+ .RE
+ .PP
+
+-.SS "int32_t qb_hdb_iterator_next (struct \fBqb_hdb\fP *hdb, void **instance, \fBqb_handle_t\fP *handle)"
+-
++.SS "int32_t \fBqb_hdb_iterator_next\fP (struct \fBqb_hdb\fP *hdb, void **instance, \fBqb_handle_t\fP *handle)"
+ .PP
+ Get the next object and increament it's refcount\&. Remember to call \fBqb_hdb_handle_put()\fP
+ .PP
+@@ -287,8 +272,7 @@ Get the next object and increament it's
+ .RE
+ .PP
+
+-.SS "void qb_hdb_iterator_reset (struct \fBqb_hdb\fP *hdb)"
+-
++.SS "void \fBqb_hdb_iterator_reset\fP (struct \fBqb_hdb\fP *hdb)"
+ .PP
+ Reset the iterator\&. \fBParameters:\fP
+ .RS 4
+@@ -296,8 +280,7 @@ Reset the iterator\&. \fBParameters:\fP
+ .RE
+ .PP
+
+-.SS "uint64_t qb_hdb_nocheck_convert (uint32_thandle)"
+-
++.SS "uint64_t \fBqb_hdb_nocheck_convert\fP (uint32_thandle)"
+ .SH "Author"
+ .PP
+ Generated automatically by Doxygen for libqb from the source code\&.
diff --git a/package/libqb/patches/patch-docs_man3_qbipc_common_h_3 b/package/libqb/patches/patch-docs_man3_qbipc_common_h_3
new file mode 100644
index 000000000..57bd1b059
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbipc_common_h_3
@@ -0,0 +1,67 @@
+--- libqb-0.16.0.orig/docs/man3/qbipc_common.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbipc_common.h.3 2013-09-09 05:26:31.455810766 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbipc_common.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbipc_common.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -19,7 +19,7 @@ qbipc_common.h \-
+ .RI "struct \fBqb_ipc_response_header\fP"
+ .br
+ .in -1c
+-.SS "Macros"
++.SS "Defines"
+
+ .in +1c
+ .ti -1c
+@@ -59,24 +59,18 @@ qbipc_common.h \-
+ .RI "enum \fBqb_ipc_type\fP \fB__attribute__\fP"
+ .br
+ .in -1c
+-.SH "Macro Definition Documentation"
++.SH "Define Documentation"
+ .PP
+-.SS "#define QB_IPC_MSG_AUTHENTICATE -1"
+-
+-.SS "#define QB_IPC_MSG_DISCONNECT -3"
+-
+-.SS "#define QB_IPC_MSG_NEW_EVENT_SOCK -2"
+-
+-.SS "#define QB_IPC_MSG_NEW_MESSAGE 0"
+-
+-.SS "#define QB_IPC_MSG_USER_START \fBQB_IPC_MSG_NEW_MESSAGE\fP"
+-
++.SS "#define \fBQB_IPC_MSG_AUTHENTICATE\fP -1"
++.SS "#define \fBQB_IPC_MSG_DISCONNECT\fP -3"
++.SS "#define \fBQB_IPC_MSG_NEW_EVENT_SOCK\fP -2"
++.SS "#define \fBQB_IPC_MSG_NEW_MESSAGE\fP 0"
++.SS "#define \fBQB_IPC_MSG_USER_START\fP \fBQB_IPC_MSG_NEW_MESSAGE\fP"
+ .SH "Enumeration Type Documentation"
+ .PP
+ .SS "enum \fBqb_ipc_type\fP"
+-
+ .PP
+-\fBEnumerator\fP
++\fBEnumerator: \fP
+ .in +1c
+ .TP
+ \fB\fIQB_IPC_SOCKET \fP\fP
+@@ -88,14 +82,13 @@ qbipc_common.h \-
+ \fB\fIQB_IPC_SYSV_MQ \fP\fP
+ .TP
+ \fB\fIQB_IPC_NATIVE \fP\fP
++
+ .SH "Function Documentation"
+ .PP
+-.SS "struct \fBqb_ipc_request_header\fP __attribute__ ((aligned(8)))"
+-
++.SS "struct \fBqb_ipc_request_header\fP \fB__attribute__\fP ((aligned(8)))"
+ .SH "Variable Documentation"
+ .PP
+-.SS "int32_t error __attribute__"
+-
++.SS "int32_t error \fB__attribute__\fP"
+ .SH "Author"
+ .PP
+ Generated automatically by Doxygen for libqb from the source code\&.
diff --git a/package/libqb/patches/patch-docs_man3_qbipcc_h_3 b/package/libqb/patches/patch-docs_man3_qbipcc_h_3
new file mode 100644
index 000000000..d3fdd0eec
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbipcc_h_3
@@ -0,0 +1,167 @@
+--- libqb-0.16.0.orig/docs/man3/qbipcc.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbipcc.h.3 2013-09-09 05:26:31.487810365 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbipcc.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbipcc.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -113,11 +113,9 @@ The \fBqb_ipcc_event_recv()\fP function
+ .SH "Typedef Documentation"
+ .PP
+ .SS "typedef struct qb_ipcc_connection \fBqb_ipcc_connection_t\fP"
+-
+ .SH "Function Documentation"
+ .PP
+-.SS "\fBqb_ipcc_connection_t\fP* qb_ipcc_connect (const char *name, size_tmax_msg_size)"
+-
++.SS "\fBqb_ipcc_connection_t\fP* \fBqb_ipcc_connect\fP (const char *name, size_tmax_msg_size)"
+ .PP
+ Create a connection to an IPC service\&. \fBParameters:\fP
+ .RS 4
+@@ -133,12 +131,11 @@ NULL (error: see errno) or a connection
+ .PP
+ \fBNote:\fP
+ .RS 4
+-It is recommended to do a one time check on the max_msg_size value using qb_ipcc_verify_dgram_max_msg_size \fIBEFORE\fP calling the connect function when IPC_SOCKET is in use\&. Some distributions while allow large message buffers to be set on the socket, but not actually honor them because of kernel state values\&. The qb_ipcc_verify_dgram_max_msg_size function both sets the socket buffer size and verifies it by doing a send/recv\&.
++It is recommended to do a one time check on the max_msg_size value using qb_ipcc_verify_dgram_max_msg_size _BEFORE_ calling the connect function when IPC_SOCKET is in use\&. Some distributions while allow large message buffers to be set on the socket, but not actually honor them because of kernel state values\&. The qb_ipcc_verify_dgram_max_msg_size function both sets the socket buffer size and verifies it by doing a send/recv\&.
+ .RE
+ .PP
+
+-.SS "void* qb_ipcc_context_get (\fBqb_ipcc_connection_t\fP *c)"
+-
++.SS "void* \fBqb_ipcc_context_get\fP (\fBqb_ipcc_connection_t\fP *c)"
+ .PP
+ Get the context (set previously) \fBParameters:\fP
+ .RS 4
+@@ -150,14 +147,13 @@ Get the context (set previously) \fBPara
+ the context
+ .RE
+ .PP
+-\fBSee Also:\fP
++\fBSee also:\fP
+ .RS 4
+ \fBqb_ipcc_context_set()\fP
+ .RE
+ .PP
+
+-.SS "void qb_ipcc_context_set (\fBqb_ipcc_connection_t\fP *c, void *context)"
+-
++.SS "void \fBqb_ipcc_context_set\fP (\fBqb_ipcc_connection_t\fP *c, void *context)"
+ .PP
+ Associate a 'user' pointer with this connection\&. \fBParameters:\fP
+ .RS 4
+@@ -166,14 +162,13 @@ Associate a 'user' pointer with this con
+ \fIc\fP connection instance
+ .RE
+ .PP
+-\fBSee Also:\fP
++\fBSee also:\fP
+ .RS 4
+ \fBqb_ipcc_context_get()\fP
+ .RE
+ .PP
+
+-.SS "void qb_ipcc_disconnect (\fBqb_ipcc_connection_t\fP *c)"
+-
++.SS "void \fBqb_ipcc_disconnect\fP (\fBqb_ipcc_connection_t\fP *c)"
+ .PP
+ Disconnect an IPC connection\&. \fBParameters:\fP
+ .RS 4
+@@ -181,8 +176,7 @@ Disconnect an IPC connection\&. \fBParam
+ .RE
+ .PP
+
+-.SS "ssize_t qb_ipcc_event_recv (\fBqb_ipcc_connection_t\fP *c, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+-
++.SS "ssize_t \fBqb_ipcc_event_recv\fP (\fBqb_ipcc_connection_t\fP *c, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+ .PP
+ Receive an event\&. \fBParameters:\fP
+ .RS 4
+@@ -208,8 +202,7 @@ that msg_ptr will include a \fBqb_ipc_re
+ .RE
+ .PP
+
+-.SS "int32_t qb_ipcc_fc_enable_max_set (\fBqb_ipcc_connection_t\fP *c, uint32_tmax)"
+-
++.SS "int32_t \fBqb_ipcc_fc_enable_max_set\fP (\fBqb_ipcc_connection_t\fP *c, uint32_tmax)"
+ .PP
+ Set the maximum allowable flowcontrol value\&. \fBNote:\fP
+ .RS 4
+@@ -224,8 +217,7 @@ the default is 1
+ .RE
+ .PP
+
+-.SS "int32_t qb_ipcc_fd_get (\fBqb_ipcc_connection_t\fP *c, int32_t *fd)"
+-
++.SS "int32_t \fBqb_ipcc_fd_get\fP (\fBqb_ipcc_connection_t\fP *c, int32_t *fd)"
+ .PP
+ Get the file descriptor to poll\&. \fBParameters:\fP
+ .RS 4
+@@ -235,8 +227,7 @@ Get the file descriptor to poll\&. \fBPa
+ .RE
+ .PP
+
+-.SS "int32_t qb_ipcc_is_connected (\fBqb_ipcc_connection_t\fP *c)"
+-
++.SS "int32_t \fBqb_ipcc_is_connected\fP (\fBqb_ipcc_connection_t\fP *c)"
+ .PP
+ Is the connection connected? \fBParameters:\fP
+ .RS 4
+@@ -251,8 +242,7 @@ Is the connection connected? \fBParamete
+ .RE
+ .PP
+
+-.SS "ssize_t qb_ipcc_recv (\fBqb_ipcc_connection_t\fP *c, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+-
++.SS "ssize_t \fBqb_ipcc_recv\fP (\fBqb_ipcc_connection_t\fP *c, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+ .PP
+ Receive a response\&. \fBParameters:\fP
+ .RS 4
+@@ -276,8 +266,7 @@ that msg_ptr will include a \fBqb_ipc_re
+ .RE
+ .PP
+
+-.SS "ssize_t qb_ipcc_send (\fBqb_ipcc_connection_t\fP *c, const void *msg_ptr, size_tmsg_len)"
+-
++.SS "ssize_t \fBqb_ipcc_send\fP (\fBqb_ipcc_connection_t\fP *c, const void *msg_ptr, size_tmsg_len)"
+ .PP
+ Send a message\&. \fBParameters:\fP
+ .RS 4
+@@ -299,8 +288,7 @@ the msg_ptr must include a \fBqb_ipc_req
+ .RE
+ .PP
+
+-.SS "ssize_t qb_ipcc_sendv (\fBqb_ipcc_connection_t\fP *c, const struct iovec *iov, size_tiov_len)"
+-
++.SS "ssize_t \fBqb_ipcc_sendv\fP (\fBqb_ipcc_connection_t\fP *c, const struct iovec *iov, size_tiov_len)"
+ .PP
+ Send a message (iovec)\&. \fBParameters:\fP
+ .RS 4
+@@ -322,8 +310,7 @@ the iov[0] must be a \fBqb_ipc_request_h
+ .RE
+ .PP
+
+-.SS "ssize_t qb_ipcc_sendv_recv (\fBqb_ipcc_connection_t\fP *c, const struct iovec *iov, uint32_tiov_len, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+-
++.SS "ssize_t \fBqb_ipcc_sendv_recv\fP (\fBqb_ipcc_connection_t\fP *c, const struct iovec *iov, uint32_tiov_len, void *msg_ptr, size_tmsg_len, int32_tms_timeout)"
+ .PP
+ This is a convenience function that simply sends and then recvs\&. \fBParameters:\fP
+ .RS 4
+@@ -347,14 +334,13 @@ the iov[0] must include a \fBqb_ipc_requ
+ that msg_ptr will include a \fBqb_ipc_response_header\fP at the top of the message\&.
+ .RE
+ .PP
+-\fBSee Also:\fP
++\fBSee also:\fP
+ .RS 4
+ \fBqb_ipcc_sendv()\fP \fBqb_ipcc_recv()\fP
+ .RE
+ .PP
+
+-.SS "int32_t qb_ipcc_verify_dgram_max_msg_size (size_tmax_msg_size)"
+-
++.SS "int32_t \fBqb_ipcc_verify_dgram_max_msg_size\fP (size_tmax_msg_size)"
+ .PP
+ Test kernel dgram socket buffers to verify the largest size up to the max_msg_size value a single msg can be\&. Rounds down to the nearest 1k\&.
+ .PP
diff --git a/package/libqb/patches/patch-docs_man3_qbipcs_h_3 b/package/libqb/patches/patch-docs_man3_qbipcs_h_3
new file mode 100644
index 000000000..224543484
--- /dev/null
+++ b/package/libqb/patches/patch-docs_man3_qbipcs_h_3
@@ -0,0 +1,383 @@
+--- libqb-0.16.0.orig/docs/man3/qbipcs.h.3 2013-07-25 20:16:18.000000000 +0200
++++ libqb-0.16.0/docs/man3/qbipcs.h.3 2013-09-09 05:26:31.551809560 +0200
+@@ -1,4 +1,4 @@
+-.TH "qbipcs.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
++.TH "qbipcs.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*-
+ .ad l
+ .nh
+ .SH NAME
+@@ -206,8 +206,7 @@ Server IPC API\&.
+
+ .SH "Typedef Documentation"
+ .PP
+-.SS "typedef int32_t(* qb_ipcs_connection_accept_fn)(\fBqb_ipcs_connection_t\fP *c, uid_t uid, gid_t gid)"
+-
++.SS "typedef int32_t(* \fBqb_ipcs_connection_accept_fn\fP)(\fBqb_ipcs_connection_t\fP *c, uid_t uid, gid_t gid)"
+ .PP
+ This callback is to check wether you want to accept a new connection\&. The type of checks you should do are authentication, service availabilty or process resource constraints\&.
+ .PP
+@@ -222,8 +221,7 @@ you can call \fBqb_ipcs_connection_auth_
+ .RE
+ .PP
+
+-.SS "typedef int32_t(* qb_ipcs_connection_closed_fn)(\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "typedef int32_t(* \fBqb_ipcs_connection_closed_fn\fP)(\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ This is called after a connection has been disconnected\&. \fBNote:\fP
+ .RS 4
+@@ -231,38 +229,27 @@ if you return anything but 0 this functi
+ .RE
+ .PP
+
+-.SS "typedef void(* qb_ipcs_connection_created_fn)(\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "typedef void(* \fBqb_ipcs_connection_created_fn\fP)(\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ This is called after a new connection has been created\&.
+-.SS "typedef void(* qb_ipcs_connection_destroyed_fn)(\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "typedef void(* \fBqb_ipcs_connection_destroyed_fn\fP)(\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ This is called just before a connection is freed\&.
+ .SS "typedef struct qb_ipcs_connection \fBqb_ipcs_connection_t\fP"
+-
+-.SS "typedef int32_t(* qb_ipcs_dispatch_add_fn)(enum \fBqb_loop_priority\fP p, int32_t fd, int32_t events, void *data, \fBqb_ipcs_dispatch_fn_t\fP fn)"
+-
+-.SS "typedef int32_t(* qb_ipcs_dispatch_del_fn)(int32_t fd)"
+-
+-.SS "typedef int32_t(* qb_ipcs_dispatch_fn_t)(int32_t fd, int32_t revents, void *data)"
+-
+-.SS "typedef int32_t(* qb_ipcs_dispatch_mod_fn)(enum \fBqb_loop_priority\fP p, int32_t fd, int32_t events, void *data, \fBqb_ipcs_dispatch_fn_t\fP fn)"
+-
+-.SS "typedef int32_t(* qb_ipcs_job_add_fn)(enum \fBqb_loop_priority\fP p, void *data, \fBqb_loop_job_dispatch_fn\fP dispatch_fn)"
+-
+-.SS "typedef int32_t(* qb_ipcs_msg_process_fn)(\fBqb_ipcs_connection_t\fP *c, void *data, size_t size)"
+-
++.SS "typedef int32_t(* \fBqb_ipcs_dispatch_add_fn\fP)(enum \fBqb_loop_priority\fP p, int32_t fd, int32_t events, void *data, \fBqb_ipcs_dispatch_fn_t\fP fn)"
++.SS "typedef int32_t(* \fBqb_ipcs_dispatch_del_fn\fP)(int32_t fd)"
++.SS "typedef int32_t(* \fBqb_ipcs_dispatch_fn_t\fP)(int32_t fd, int32_t revents, void *data)"
++.SS "typedef int32_t(* \fBqb_ipcs_dispatch_mod_fn\fP)(enum \fBqb_loop_priority\fP p, int32_t fd, int32_t events, void *data, \fBqb_ipcs_dispatch_fn_t\fP fn)"
++.SS "typedef int32_t(* \fBqb_ipcs_job_add_fn\fP)(enum \fBqb_loop_priority\fP p, void *data, \fBqb_loop_job_dispatch_fn\fP dispatch_fn)"
++.SS "typedef int32_t(* \fBqb_ipcs_msg_process_fn\fP)(\fBqb_ipcs_connection_t\fP *c, void *data, size_t size)"
+ .PP
+ This is the message processing calback\&. It is called with the message data\&.
+ .SS "typedef struct qb_ipcs_service \fBqb_ipcs_service_t\fP"
+-
+ .SH "Enumeration Type Documentation"
+ .PP
+ .SS "enum \fBqb_ipcs_rate_limit\fP"
+-
+ .PP
+-\fBEnumerator\fP
++\fBEnumerator: \fP
+ .in +1c
+ .TP
+ \fB\fIQB_IPCS_RATE_FAST \fP\fP
+@@ -274,10 +261,10 @@ This is the message processing calback\&
+ \fB\fIQB_IPCS_RATE_OFF \fP\fP
+ .TP
+ \fB\fIQB_IPCS_RATE_OFF_2 \fP\fP
++
+ .SH "Function Documentation"
+ .PP
+-.SS "void qb_ipcs_connection_auth_set (\fBqb_ipcs_connection_t\fP *conn, uid_tuid, gid_tgid, mode_tmode)"
+-
++.SS "void \fBqb_ipcs_connection_auth_set\fP (\fBqb_ipcs_connection_t\fP *conn, uid_tuid, gid_tgid, mode_tmode)"
+ .PP
+ Set the permissions on and shared memory files so that both processes can read and write to them\&. \fBParameters:\fP
+ .RS 4
+@@ -290,7 +277,7 @@ Set the permissions on and shared memory
+ \fImode\fP the mode to set\&.
+ .RE
+ .PP
+-\fBSee Also:\fP
++\fBSee also:\fP
+ .RS 4
+ chmod() chown()
+ .RE
+@@ -301,8 +288,7 @@ this must be called within the \fBqb_ipc
+ .RE
+ .PP
+
+-.SS "\fBqb_ipcs_connection_t\fP* qb_ipcs_connection_first_get (\fBqb_ipcs_service_t\fP *pt)"
+-
++.SS "\fBqb_ipcs_connection_t\fP* \fBqb_ipcs_connection_first_get\fP (\fBqb_ipcs_service_t\fP *pt)"
+ .PP
+ Get the first connection\&. \fBNote:\fP
+ .RS 4
+@@ -320,8 +306,7 @@ first connection
+ .RE
+ .PP
+
+-.SS "\fBqb_ipcs_connection_t\fP* qb_ipcs_connection_next_get (\fBqb_ipcs_service_t\fP *pt, \fBqb_ipcs_connection_t\fP *current)"
+-
++.SS "\fBqb_ipcs_connection_t\fP* \fBqb_ipcs_connection_next_get\fP (\fBqb_ipcs_service_t\fP *pt, \fBqb_ipcs_connection_t\fP *current)"
+ .PP
+ Get the next connection\&. \fBNote:\fP
+ .RS 4
+@@ -341,8 +326,7 @@ next connection
+ .RE
+ .PP
+
+-.SS "void qb_ipcs_connection_ref (\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "void \fBqb_ipcs_connection_ref\fP (\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ Increment the connection's reference counter\&. \fBParameters:\fP
+ .RS 4
+@@ -350,8 +334,7 @@ Increment the connection's reference cou
+ .RE
+ .PP
+
+-.SS "void* qb_ipcs_connection_service_context_get (\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "void* \fBqb_ipcs_connection_service_context_get\fP (\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ Get the context previously set on the service backing this connection\&. \fBParameters:\fP
+ .RS 4
+@@ -363,14 +346,13 @@ Get the context previously set on the se
+ the context
+ .RE
+ .PP
+-\fBSee Also:\fP
++\fBSee also:\fP
+ .RS 4
+ \fBqb_ipcs_service_context_set\fP
+ .RE
+ .PP
+
+-.SS "int32_t qb_ipcs_connection_stats_get (\fBqb_ipcs_connection_t\fP *c, struct \fBqb_ipcs_connection_stats\fP *stats, int32_tclear_after_read)"
+-
++.SS "int32_t \fBqb_ipcs_connection_stats_get\fP (\fBqb_ipcs_connection_t\fP *c, struct \fBqb_ipcs_connection_stats\fP *stats, int32_tclear_after_read)"
+ .PP
+ Get the connection statistics\&. \fBDeprecated\fP
+ .RS 4
+@@ -392,8 +374,7 @@ from v0\&.13\&.0 onwards, use qb_ipcs_co
+ .RE
+ .PP
+
+-.SS "struct \fBqb_ipcs_connection_stats_2\fP* qb_ipcs_connection_stats_get_2 (\fBqb_ipcs_connection_t\fP *c, int32_tclear_after_read)\fC [read]\fP"
+-
++.SS "struct \fBqb_ipcs_connection_stats_2\fP* \fBqb_ipcs_connection_stats_get_2\fP (\fBqb_ipcs_connection_t\fP *c, int32_tclear_after_read)\fC [read]\fP"
+ .PP
+ Get (and allocate) the connection statistics\&. \fBParameters:\fP
+ .RS 4
+@@ -410,8 +391,7 @@ Get (and allocate) the connection statis
+ .RE
+ .PP
+
+-.SS "void qb_ipcs_connection_unref (\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "void \fBqb_ipcs_connection_unref\fP (\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ Decrement the connection's reference counter\&. \fBParameters:\fP
+ .RS 4
+@@ -419,8 +399,7 @@ Decrement the connection's reference cou
+ .RE
+ .PP
+
+-.SS "void* qb_ipcs_context_get (\fBqb_ipcs_connection_t\fP *c)"
+-
++.SS "void* \fBqb_ipcs_context_get\fP (\fBqb_ipcs_connection_t\fP *c)"
+ .PP
+ Get the context (set previously) \fBParameters:\fP
+ .RS 4
+@@ -432,14 +411,13 @@ Get the context (set previously) \fBPara
+ the context
+ .RE
+ .PP
+-\fBSee Also:\fP