From b445e8bc0d2f03ed559aaf18a698dd1c2a6a9349 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Mon, 9 Sep 2013 07:50:05 +0200 Subject: update to latest upstream --- package/libqb/Makefile | 4 +- package/libqb/patches/patch-Makefile_in | 11 + package/libqb/patches/patch-docs_man3_qbarray_h_3 | 106 ++++ package/libqb/patches/patch-docs_man3_qbatomic_h_3 | 157 +++++ package/libqb/patches/patch-docs_man3_qbhdb_h_3 | 165 ++++++ .../libqb/patches/patch-docs_man3_qbipc_common_h_3 | 67 +++ package/libqb/patches/patch-docs_man3_qbipcc_h_3 | 167 ++++++ package/libqb/patches/patch-docs_man3_qbipcs_h_3 | 383 ++++++++++++ package/libqb/patches/patch-docs_man3_qblist_h_3 | 248 ++++++++ package/libqb/patches/patch-docs_man3_qblog_h_3 | 649 +++++++++++++++++++++ package/libqb/patches/patch-docs_man3_qbloop_h_3 | 222 +++++++ package/libqb/patches/patch-docs_man3_qbmap_h_3 | 261 +++++++++ package/libqb/patches/patch-docs_man3_qbutil_h_3 | 284 +++++++++ 13 files changed, 2722 insertions(+), 2 deletions(-) create mode 100644 package/libqb/patches/patch-Makefile_in create mode 100644 package/libqb/patches/patch-docs_man3_qbarray_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbatomic_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbhdb_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbipc_common_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbipcc_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbipcs_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qblist_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qblog_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbloop_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbmap_h_3 create mode 100644 package/libqb/patches/patch-docs_man3_qbutil_h_3 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 \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 ++\fBSee also:\fP + .RS 4 + \fBqb_ipcs_context_set()\fP + .RE + .PP + +-.SS "void qb_ipcs_context_set (\fBqb_ipcs_connection_t\fP *c, void *context)" +- ++.SS "void \fBqb_ipcs_context_set\fP (\fBqb_ipcs_connection_t\fP *c, void *context)" + .PP + Associate a 'user' pointer with this connection\&. \fBParameters:\fP + .RS 4 +@@ -448,14 +426,13 @@ Associate a 'user' pointer with this con + \fIc\fP connection instance + .RE + .PP +-\fBSee Also:\fP ++\fBSee also:\fP + .RS 4 + \fBqb_ipcs_context_get()\fP + .RE + .PP + +-.SS "\fBqb_ipcs_service_t\fP* qb_ipcs_create (const char *name, int32_tservice_id, enum \fBqb_ipc_type\fPtype, struct \fBqb_ipcs_service_handlers\fP *handlers)" +- ++.SS "\fBqb_ipcs_service_t\fP* \fBqb_ipcs_create\fP (const char *name, int32_tservice_id, enum \fBqb_ipc_type\fPtype, struct \fBqb_ipcs_service_handlers\fP *handlers)" + .PP + Create a new IPC server\&. \fBParameters:\fP + .RS 4 +@@ -474,8 +451,7 @@ the new service instance\&. + .RE + .PP + +-.SS "void qb_ipcs_destroy (\fBqb_ipcs_service_t\fP *s)" +- ++.SS "void \fBqb_ipcs_destroy\fP (\fBqb_ipcs_service_t\fP *s)" + .PP + Destroy the IPC server\&. \fBParameters:\fP + .RS 4 +@@ -483,8 +459,7 @@ Destroy the IPC server\&. \fBParameters: + .RE + .PP + +-.SS "void qb_ipcs_disconnect (\fBqb_ipcs_connection_t\fP *c)" +- ++.SS "void \fBqb_ipcs_disconnect\fP (\fBqb_ipcs_connection_t\fP *c)" + .PP + Disconnect from this client\&. \fBParameters:\fP + .RS 4 +@@ -492,8 +467,7 @@ Disconnect from this client\&. \fBParame + .RE + .PP + +-.SS "ssize_t qb_ipcs_event_send (\fBqb_ipcs_connection_t\fP *c, const void *data, size_tsize)" +- ++.SS "ssize_t \fBqb_ipcs_event_send\fP (\fBqb_ipcs_connection_t\fP *c, const void *data, size_tsize)" + .PP + Send an asyncronous event message to the client\&. \fBParameters:\fP + .RS 4 +@@ -515,8 +489,7 @@ the data must include a \fBqb_ipc_respon + .RE + .PP + +-.SS "ssize_t qb_ipcs_event_sendv (\fBqb_ipcs_connection_t\fP *c, const struct iovec *iov, size_tiov_len)" +- ++.SS "ssize_t \fBqb_ipcs_event_sendv\fP (\fBqb_ipcs_connection_t\fP *c, const struct iovec *iov, size_tiov_len)" + .PP + Send an asyncronous event message to the client\&. \fBParameters:\fP + .RS 4 +@@ -538,8 +511,7 @@ the iov[0] must be a \fBqb_ipc_response_ + .RE + .PP + +-.SS "void qb_ipcs_poll_handlers_set (\fBqb_ipcs_service_t\fP *s, struct \fBqb_ipcs_poll_handlers\fP *handlers)" +- ++.SS "void \fBqb_ipcs_poll_handlers_set\fP (\fBqb_ipcs_service_t\fP *s, struct \fBqb_ipcs_poll_handlers\fP *handlers)" + .PP + Set your poll callbacks\&. \fBParameters:\fP + .RS 4 +@@ -549,8 +521,7 @@ Set your poll callbacks\&. \fBParameters + .RE + .PP + +-.SS "void qb_ipcs_ref (\fBqb_ipcs_service_t\fP *s)" +- ++.SS "void \fBqb_ipcs_ref\fP (\fBqb_ipcs_service_t\fP *s)" + .PP + Increase the reference counter on the service object\&. \fBParameters:\fP + .RS 4 +@@ -558,8 +529,7 @@ Increase the reference counter on the se + .RE + .PP + +-.SS "void qb_ipcs_request_rate_limit (\fBqb_ipcs_service_t\fP *s, enum \fBqb_ipcs_rate_limit\fPrl)" +- ++.SS "void \fBqb_ipcs_request_rate_limit\fP (\fBqb_ipcs_service_t\fP *s, enum \fBqb_ipcs_rate_limit\fPrl)" + .PP + Limit the incomming request rate\&. \fBParameters:\fP + .RS 4 +@@ -569,8 +539,7 @@ Limit the incomming request rate\&. \fBP + .RE + .PP + +-.SS "ssize_t qb_ipcs_response_send (\fBqb_ipcs_connection_t\fP *c, const void *data, size_tsize)" +- ++.SS "ssize_t \fBqb_ipcs_response_send\fP (\fBqb_ipcs_connection_t\fP *c, const void *data, size_tsize)" + .PP + Send a response to a incomming request\&. \fBParameters:\fP + .RS 4 +@@ -592,8 +561,7 @@ the data must include a \fBqb_ipc_respon + .RE + .PP + +-.SS "ssize_t qb_ipcs_response_sendv (\fBqb_ipcs_connection_t\fP *c, const struct iovec *iov, size_tiov_len)" +- ++.SS "ssize_t \fBqb_ipcs_response_sendv\fP (\fBqb_ipcs_connection_t\fP *c, const struct iovec *iov, size_tiov_len)" + .PP + Send a response to a incomming request\&. \fBParameters:\fP + .RS 4 +@@ -615,8 +583,7 @@ the iov[0] must be a \fBqb_ipc_response_ + .RE + .PP + +-.SS "int32_t qb_ipcs_run (\fBqb_ipcs_service_t\fP *s)" +- ++.SS "int32_t \fBqb_ipcs_run\fP (\fBqb_ipcs_service_t\fP *s)" + .PP + run the new IPC server\&. \fBParameters:\fP + .RS 4 +@@ -629,8 +596,7 @@ run the new IPC server\&. \fBParameters: + .RE + .PP + +-.SS "void* qb_ipcs_service_context_get (\fBqb_ipcs_service_t\fP *s)" +- ++.SS "void* \fBqb_ipcs_service_context_get\fP (\fBqb_ipcs_service_t\fP *s)" + .PP + Get the context (set previously) \fBParameters:\fP + .RS 4 +@@ -642,14 +608,13 @@ Get the context (set previously) \fBPara + the context + .RE + .PP +-\fBSee Also:\fP ++\fBSee also:\fP + .RS 4 + \fBqb_ipcs_service_context_set()\fP + .RE + .PP + +-.SS "void qb_ipcs_service_context_set (\fBqb_ipcs_service_t\fP *s, void *context)" +- ++.SS "void \fBqb_ipcs_service_context_set\fP (\fBqb_ipcs_service_t\fP *s, void *context)" + .PP + Associate a 'user' pointer with this service\&. \fBParameters:\fP + .RS 4 +@@ -658,14 +623,13 @@ Associate a 'user' pointer with this ser + \fIcontext\fP the pointer to associate with this service\&. + .RE + .PP +-\fBSee Also:\fP ++\fBSee also:\fP + .RS 4 + \fBqb_ipcs_service_context_get()\fP + .RE + .PP + +-.SS "int32_t qb_ipcs_service_id_get (\fBqb_ipcs_connection_t\fP *c)" +- ++.SS "int32_t \fBqb_ipcs_service_id_get\fP (\fBqb_ipcs_connection_t\fP *c)" + .PP + Get the service id related to this connection's service\&. (as passed into \fBqb_ipcs_create()\fP + .PP +@@ -675,8 +639,7 @@ service id\&. + .RE + .PP + +-.SS "int32_t qb_ipcs_stats_get (\fBqb_ipcs_service_t\fP *pt, struct \fBqb_ipcs_stats\fP *stats, int32_tclear_after_read)" +- ++.SS "int32_t \fBqb_ipcs_stats_get\fP (\fBqb_ipcs_service_t\fP *pt, struct \fBqb_ipcs_stats\fP *stats, int32_tclear_after_read)" + .PP + Get the service statistics\&. \fBParameters:\fP + .RS 4 +@@ -693,8 +656,7 @@ Get the service statistics\&. \fBParamet + .RE + .PP + +-.SS "void qb_ipcs_unref (\fBqb_ipcs_service_t\fP *s)" +- ++.SS "void \fBqb_ipcs_unref\fP (\fBqb_ipcs_service_t\fP *s)" + .PP + Decrease the reference counter on the service object\&. \fBParameters:\fP + .RS 4 diff --git a/package/libqb/patches/patch-docs_man3_qblist_h_3 b/package/libqb/patches/patch-docs_man3_qblist_h_3 new file mode 100644 index 000000000..114147f8b --- /dev/null +++ b/package/libqb/patches/patch-docs_man3_qblist_h_3 @@ -0,0 +1,248 @@ +--- libqb-0.16.0.orig/docs/man3/qblist.h.3 2013-07-25 20:16:18.000000000 +0200 ++++ libqb-0.16.0/docs/man3/qblist.h.3 2013-09-09 05:26:31.607808856 +0200 +@@ -1,4 +1,4 @@ +-.TH "qblist.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*- ++.TH "qblist.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*- + .ad l + .nh + .SH NAME +@@ -21,7 +21,7 @@ This is a kernel style list implementati + .RI "struct \fBqb_list_head\fP" + .br + .in -1c +-.SS "Macros" ++.SS "Defines" + + .in +1c + .ti -1c +@@ -122,26 +122,23 @@ This is a kernel style list implementati + + \fBAuthor:\fP + .RS 4 +-Steven Dake sdake@redhat.com ++Steven Dake + .RE + .PP + +-.SH "Macro Definition Documentation" ++.SH "Define Documentation" + .PP +-.SS "#define QB_INIT_LIST_HEAD(ptr)" +-\fBValue:\fP ++.SS "#define \fBQB_INIT_LIST_HEAD\fP(ptr)"\fBValue:\fP + .PP + .nf + do { \ + (ptr)->next = (ptr); (ptr)->prev = (ptr); \ + } while (0) + .fi +-.SS "#define QB_LIST_DECLARE(name) struct \fBqb_list_head\fP name = { &(name), &(name) }" +- ++.SS "#define \fBQB_LIST_DECLARE\fP(name) struct \fBqb_list_head\fP name = { &(name), &(name) }" + .PP + Declare and initialize a list head\&. +-.SS "#define qb_list_entry(ptr, type, member) ((type *)((char *)(ptr)-(char*)(&((type *)0)->member)))" +- ++.SS "#define \fBqb_list_entry\fP(ptr, type, member) ((type *)((char *)(ptr)-(char*)(&((type *)0)->member)))" + .PP + Get the struct for this entry\&. \fBParameters:\fP + .RS 4 +@@ -153,8 +150,7 @@ Get the struct for this entry\&. \fBPara + .RE + .PP + +-.SS "#define qb_list_first_entry(ptr, type, member) \fBqb_list_entry\fP((ptr)->next, type, member)" +- ++.SS "#define \fBqb_list_first_entry\fP(ptr, type, member) \fBqb_list_entry\fP((ptr)->next, type, member)" + .PP + Get the first element from a list\&. \fBParameters:\fP + .RS 4 +@@ -166,8 +162,7 @@ Get the first element from a list\&. \fB + .RE + .PP + +-.SS "#define qb_list_for_each(pos, head) for (pos = (head)->next; pos != (head); pos = pos->next)" +- ++.SS "#define \fBqb_list_for_each\fP(pos, head) for (pos = (head)->next; pos != (head); pos = pos->next)" + .PP + Iterate over a list\&. \fBParameters:\fP + .RS 4 +@@ -179,8 +174,7 @@ Iterate over a list\&. \fBParameters:\fP + + .PP + Referenced by qb_list_length()\&. +-.SS "#define qb_list_for_each_entry(pos, head, member)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_entry\fP(pos, head, member)"\fBValue:\fP + .PP + .nf + for (pos = qb_list_entry((head)->next, typeof(*pos), member); \ +@@ -198,8 +192,7 @@ Iterate over list of given type\&. \fBPa + .RE + .PP + +-.SS "#define qb_list_for_each_entry_from(pos, head, member)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_entry_from\fP(pos, head, member)"\fBValue:\fP + .PP + .nf + for (; &pos->member != (head); \ +@@ -216,8 +209,7 @@ Iterate over list of given type from the + .RE + .PP + +-.SS "#define qb_list_for_each_entry_reverse(pos, head, member)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_entry_reverse\fP(pos, head, member)"\fBValue:\fP + .PP + .nf + for (pos = qb_list_entry((head)->prev, typeof(*pos), member); \ +@@ -235,8 +227,7 @@ Iterate backwards over list of given typ + .RE + .PP + +-.SS "#define qb_list_for_each_entry_safe(pos, n, head, member)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_entry_safe\fP(pos, n, head, member)"\fBValue:\fP + .PP + .nf + for (pos = qb_list_entry((head)->next, typeof(*pos), member), \ +@@ -257,8 +248,7 @@ Iterate over list of given type safe aga + .RE + .PP + +-.SS "#define qb_list_for_each_entry_safe_reverse(pos, n, head, member)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_entry_safe_reverse\fP(pos, n, head, member)"\fBValue:\fP + .PP + .nf + for (pos = qb_list_entry((head)->prev, typeof(*pos), member), \ +@@ -279,8 +269,7 @@ Iterate backwards over list safe against + .RE + .PP + +-.SS "#define qb_list_for_each_reverse(pos, head) for (pos = (head)->prev; pos != (head); pos = pos->prev)" +- ++.SS "#define \fBqb_list_for_each_reverse\fP(pos, head) for (pos = (head)->prev; pos != (head); pos = pos->prev)" + .PP + Iterate over a list backwards\&. \fBParameters:\fP + .RS 4 +@@ -290,8 +279,7 @@ Iterate over a list backwards\&. \fBPara + .RE + .PP + +-.SS "#define qb_list_for_each_safe(pos, n, head)" +-\fBValue:\fP ++.SS "#define \fBqb_list_for_each_safe\fP(pos, n, head)"\fBValue:\fP + .PP + .nf + for (pos = (head)->next, n = pos->next; pos != (head); \ +@@ -310,8 +298,7 @@ Iterate over a list safe against removal + + .SH "Function Documentation" + .PP +-.SS "static void qb_list_add (struct \fBqb_list_head\fP *element, struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_add\fP (struct \fBqb_list_head\fP *element, struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Add this element to the list\&. \fBParameters:\fP + .RS 4 +@@ -323,8 +310,7 @@ Add this element to the list\&. \fBParam + + .PP + References qb_list_head::next, and qb_list_head::prev\&. +-.SS "static void qb_list_add_tail (struct \fBqb_list_head\fP *element, struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_add_tail\fP (struct \fBqb_list_head\fP *element, struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Add to the list (but at the end of the list)\&. \fBParameters:\fP + .RS 4 +@@ -333,7 +319,7 @@ Add to the list (but at the end of the l + \fIhead\fP pointer to the list head + .RE + .PP +-\fBSee Also:\fP ++\fBSee also:\fP + .RS 4 + \fBqb_list_add()\fP + .RE +@@ -341,8 +327,7 @@ Add to the list (but at the end of the l + + .PP + References qb_list_head::next, and qb_list_head::prev\&. +-.SS "static void qb_list_del (struct \fBqb_list_head\fP *_remove)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_del\fP (struct \fBqb_list_head\fP *_remove)\fC [inline, static]\fP" + .PP + Delete an entry from the list\&. \fBParameters:\fP + .RS 4 +@@ -352,8 +337,7 @@ Delete an entry from the list\&. \fBPara + + .PP + References qb_list_head::next, and qb_list_head::prev\&. +-.SS "static int32_t qb_list_empty (const struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static int32_t \fBqb_list_empty\fP (const struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + A quick test to see if the list is empty (pointing to it's self)\&. \fBParameters:\fP + .RS 4 +@@ -370,8 +354,7 @@ boolean true/false + References qb_list_head::next\&. + .PP + Referenced by qb_list_splice(), and qb_list_splice_tail()\&. +-.SS "static void qb_list_init (struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_init\fP (struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Initialize the list entry\&. Points next and prev pointers to head\&. + .PP +@@ -383,8 +366,7 @@ Initialize the list entry\&. Points next + + .PP + References qb_list_head::next, and qb_list_head::prev\&. +-.SS "static int qb_list_is_last (const struct \fBqb_list_head\fP *list, const struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static int \fBqb_list_is_last\fP (const struct \fBqb_list_head\fP *list, const struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Tests whether list is the last entry in list head\&. \fBParameters:\fP + .RS 4 +@@ -401,8 +383,7 @@ boolean true/false + + .PP + References qb_list_head::next\&. +-.SS "static int32_t qb_list_length (struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static int32_t \fBqb_list_length\fP (struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Count the number of items in the list\&. \fBParameters:\fP + .RS 4 +@@ -417,8 +398,7 @@ length of the list\&. + + .PP + References qb_list_for_each\&. +-.SS "static void qb_list_replace (struct \fBqb_list_head\fP *old, struct \fBqb_list_head\fP *new)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_replace\fP (struct \fBqb_list_head\fP *old, struct \fBqb_list_head\fP *new)\fC [inline, static]\fP" + .PP + Replace old entry by new one\&. \fBParameters:\fP + .RS 4 +@@ -430,8 +410,7 @@ Replace old entry by new one\&. \fBParam + + .PP + References qb_list_head::next, and qb_list_head::prev\&. +-.SS "static void qb_list_splice (struct \fBqb_list_head\fP *list, struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_splice\fP (struct \fBqb_list_head\fP *list, struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Join two lists\&. \fBParameters:\fP + .RS 4 +@@ -448,8 +427,7 @@ The 'list' is reinitialised + + .PP + References qb_list_head::next, qb_list_head::prev, and qb_list_empty()\&. +-.SS "static void qb_list_splice_tail (struct \fBqb_list_head\fP *list, struct \fBqb_list_head\fP *head)\fC [inline]\fP, \fC [static]\fP" +- ++.SS "static void \fBqb_list_splice_tail\fP (struct \fBqb_list_head\fP *list, struct \fBqb_list_head\fP *head)\fC [inline, static]\fP" + .PP + Join two lists, each list being a queue\&. \fBParameters:\fP + .RS 4 diff --git a/package/libqb/patches/patch-docs_man3_qblog_h_3 b/package/libqb/patches/patch-docs_man3_qblog_h_3 new file mode 100644 index 000000000..de83d0f86 --- /dev/null +++ b/package/libqb/patches/patch-docs_man3_qblog_h_3 @@ -0,0 +1,649 @@ +--- libqb-0.16.0.orig/docs/man3/qblog.h.3 2013-07-25 20:16:18.000000000 +0200 ++++ libqb-0.16.0/docs/man3/qblog.h.3 2013-09-09 05:26:31.703807649 +0200 +@@ -1,4 +1,4 @@ +-.TH "qblog.h" 3 "Thu Jul 25 2013" "Version 0.16.0" "libqb" \" -*- nroff -*- ++.TH "qblog.h" 3 "Mon Sep 9 2013" "Version 0.16.0" "libqb" \" -*- nroff -*- + .ad l + .nh + .SH NAME +@@ -36,7 +36,7 @@ The logging API provides four main parts + .br + .RI "\fIAn instance of this structure is created in a special ELF section at every dynamic debug callsite\&. \fP" + .in -1c +-.SS "Macros" ++.SS "Defines" + + .in +1c + .ti -1c +@@ -117,7 +117,7 @@ The logging API provides four main parts + + .in +1c + .ti -1c +-.RI "enum \fBqb_log_target_state\fP { \fBQB_LOG_STATE_UNUSED\fP = 1, \fBQB_LOG_STATE_DISABLED\fP = 2, \fBQB_LOG_STATE_ENABLED\fP = 3 }" ++.RI "enum \fBqb_log_target_state\fP { \fBQB_LOG_STATE_UNUSED\fP = 1, \fBQB_LOG_STATE_DISABLED\fP = 2, \fBQB_LOG_STATE_ENABLED\fP = 3 }" + .br + .ti -1c + .RI "enum \fBqb_log_conf\fP { \fBQB_LOG_CONF_ENABLED\fP, \fBQB_LOG_CONF_FACILITY\fP, \fBQB_LOG_CONF_DEBUG\fP, \fBQB_LOG_CONF_SIZE\fP, \fBQB_LOG_CONF_THREADED\fP, \fBQB_LOG_CONF_PRIORITY_BUMP\fP, \fBQB_LOG_CONF_STATE_GET\fP, \fBQB_LOG_CONF_FILE_SYNC\fP }" +@@ -294,13 +294,13 @@ Call \fBqb_log()\fP to generate a log me + Simplist possible use: + .PP + .nf +-main() { +- qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); ++ main() { ++ qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); + // \&.\&.\&. +- qb_log(LOG_WARNING, 'watch out'); ++ qb_log(LOG_WARNING, 'watch out'); + // \&.\&.\&. +- qb_log_fini(); +-} ++ qb_log_fini(); ++ } + + .fi + .PP +@@ -313,7 +313,7 @@ A log target can by syslog, stderr, the + To enable a target do the following + .PP + .nf +-qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ENABLED, QB_TRUE); ++ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ENABLED, QB_TRUE); + + .fi + .PP +@@ -321,8 +321,8 @@ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ + syslog, stderr and the blackbox are static (they don't need to be created, just enabled or disabled\&. However you can open multiple logfiles (32 - QB_LOG_BLACKBOX)\&. To do this use the following code\&. + .PP + .nf +-mytarget = qb_log_file_open('/var/log/mylogfile'); +-qb_log_ctl(mytarget, QB_LOG_CONF_ENABLED, QB_TRUE); ++ mytarget = qb_log_file_open('/var/log/mylogfile'); ++ qb_log_ctl(mytarget, QB_LOG_CONF_ENABLED, QB_TRUE); + + .fi + .PP +@@ -330,7 +330,7 @@ qb_log_ctl(mytarget, QB_LOG_CONF_ENABLED + Once your targets are enabled/opened you can configure them as follows: Configure the size of blackbox + .PP + .nf +-qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_SIZE, 1024*10); ++ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_SIZE, 1024*10); + + .fi + .PP +@@ -338,7 +338,7 @@ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ + Make logging to file threaded: + .PP + .nf +-qb_log_ctl(mytarget, QB_LOG_CONF_THREADED, QB_TRUE); ++ qb_log_ctl(mytarget, QB_LOG_CONF_THREADED, QB_TRUE); + + .fi + .PP +@@ -346,8 +346,8 @@ qb_log_ctl(mytarget, QB_LOG_CONF_THREADE + To workaround your syslog daemon filtering all messages > LOG_INFO + .PP + .nf +-qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_PRIORITY_BUMP, +- LOG_INFO - LOG_DEBUG); ++ qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_PRIORITY_BUMP, ++ LOG_INFO - LOG_DEBUG); + + .fi + .PP +@@ -355,7 +355,7 @@ qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_PR + To ensure all logs to file targets are fsync'ed (default QB_FALSE) + .PP + .nf +-qb_log_ctl(mytarget, QB_LOG_CONF_FILE_SYNC, QB_TRUE); ++ qb_log_ctl(mytarget, QB_LOG_CONF_FILE_SYNC, QB_TRUE); + + .fi + .PP +@@ -375,8 +375,8 @@ format string + priority + So to make all logs from evil_fnunction() go to stderr do the following: + .PP + .nf +-qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, +- QB_LOG_FILTER_FUNCTION, 'evil_fnunction', LOG_TRACE); ++ qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, ++ QB_LOG_FILTER_FUNCTION, 'evil_fnunction', LOG_TRACE); + + .fi + .PP +@@ -384,8 +384,8 @@ qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_ + So to make all logs from totem* (with a priority <= LOG_INFO) go to stderr do the following: + .PP + .nf +-qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, +- QB_LOG_FILTER_FILE, 'totem', LOG_INFO); ++ qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, ++ QB_LOG_FILTER_FILE, 'totem', LOG_INFO); + + .fi + .PP +@@ -393,8 +393,8 @@ qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_ + So to make all logs with the substring 'ringbuffer' go to stderr do the following: + .PP + .nf +-qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, +- QB_LOG_FILTER_FORMAT, 'ringbuffer', LOG_TRACE); ++ qb_log_filter_ctl(QB_LOG_STDERR, QB_LOG_FILTER_ADD, ++ QB_LOG_FILTER_FORMAT, 'ringbuffer', LOG_TRACE); + + .fi + .PP +@@ -407,18 +407,18 @@ To achieve non-blocking logging you can + Threaded logging use: + .PP + .nf +-main() { +- qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); +- qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_THREADED, QB_TRUE); ++ main() { ++ qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); ++ qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_THREADED, QB_TRUE); + // \&.\&.\&. + daemonize(); + // call this after you fork() + qb_log_thread_start(); + // \&.\&.\&. +- qb_log(LOG_WARNING, 'watch out'); ++ qb_log(LOG_WARNING, 'watch out'); + // \&.\&.\&. +- qb_log_fini(); +-} ++ qb_log_fini(); ++ } + + .fi + .PP +@@ -436,28 +436,28 @@ the blackbox is not enabled by default\& + Blackbox usage: + .PP + .nf +-static void sigsegv_handler(int sig) +-{ ++ static void sigsegv_handler(int sig) ++ { + (void)signal (SIGSEGV, SIG_DFL); + qb_log_blackbox_write_to_file('simple-log\&.fdata'); + qb_log_fini(); + raise(SIGSEGV); +-} ++ } + +-main() { ++ main() { + +- signal(SIGSEGV, sigsegv_handler); ++ signal(SIGSEGV, sigsegv_handler); + +- qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); +- qb_log_filter_ctl(QB_LOG_BLACKBOX, QB_LOG_FILTER_ADD, +- QB_LOG_FILTER_FILE, '*', LOG_DEBUG); +- qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_SIZE, 1024*10); +- qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ENABLED, QB_TRUE); ++ qb_log_init('simple-log', LOG_DAEMON, LOG_INFO); ++ qb_log_filter_ctl(QB_LOG_BLACKBOX, QB_LOG_FILTER_ADD, ++ QB_LOG_FILTER_FILE, '*', LOG_DEBUG); ++ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_SIZE, 1024*10); ++ qb_log_ctl(QB_LOG_BLACKBOX, QB_LOG_CONF_ENABLED, QB_TRUE); + // \&.\&.\&. +- qb_log(LOG_WARNING, 'watch out'); ++ qb_log(LOG_WARNING, 'watch out'); + // \&.\&.\&. +- qb_log_fini(); +-} ++ qb_log_fini(); ++ } + + .fi + .PP +@@ -469,7 +469,7 @@ You can tag messages using the second ar + .PP + .PP + .nf +-const char* my_tags_stringify(uint32_t tags) { ++ const char* my_tags_stringify(uint32_t tags) { + if (qb_bit_is_set(tags, QB_LOG_TAG_LIBQB_MSG_BIT) { + return 'libqb'; + } else if (tags == 3) { +@@ -477,37 +477,33 @@ const char* my_tags_stringify(uint32_t t + } else { + return 'MAIN'; + } +-} +-main() { ++ } ++ main() { + // \&.\&.\&. + qb_log_tags_stringify_fn_set(my_tags_stringify); + qb_log_format_set(QB_LOG_STDERR, '[%5g] %p %b'); + // \&.\&.\&. + qb_logt(LOG_INFO, 3, 'hello'); + qb_logt(LOG_INFO, 0, 'hello'); +-} ++ } + .fi + .PP + The code above will produce: + .PP + .nf +-[libqb] some message +-[three] info hello +-[MAIN ] info hello ++ [libqb] some message ++ [three] info hello ++ [MAIN ] info hello + + .fi + .PP + +-.SH "Macro Definition Documentation" ++.SH "Define Documentation" + .PP +-.SS "#define LOG_TRACE (LOG_DEBUG + 1)" +- +-.SS "#define qb_enter() \fBqb_log\fP(\fBLOG_TRACE\fP, 'ENTERING %s()', __func__)" +- +-.SS "#define qb_leave() \fBqb_log\fP(\fBLOG_TRACE\fP, 'LEAVING %s()', __func__)" +- +-.SS "#define qb_log(\fBpriority\fP, fmt, args\&.\&.\&.) \fBqb_logt\fP(\fBpriority\fP, 0, fmt, ##args)" +- ++.SS "#define \fBLOG_TRACE\fP (LOG_DEBUG + 1)" ++.SS "#define \fBqb_enter\fP() \fBqb_log\fP(\fBLOG_TRACE\fP, 'ENTERING %s()', __func__)" ++.SS "#define \fBqb_leave\fP() \fBqb_log\fP(\fBLOG_TRACE\fP, 'LEAVING %s()', __func__)" ++.SS "#define \fBqb_log\fP(\fBpriority\fP, fmt, args\&.\&.\&.) \fBqb_logt\fP(\fBpriority\fP, 0, fmt, ##args)" + .PP + This is the main function to generate a log message\&. \fBParameters:\fP + .RS 4 +@@ -519,34 +515,23 @@ This is the main function to generate a + .RE + .PP + +-.SS "#define QB_LOG_BLACKBOX 2" +- +-.SS "#define QB_LOG_INIT_DATA(name)" +-\fBValue:\fP ++.SS "#define \fBQB_LOG_BLACKBOX\fP 2" ++.SS "#define \fBQB_LOG_INIT_DATA\fP(name)"\fBValue:\fP + .PP + .nf + void name(void); \ + void name(void) { if (__start___verbose != __stop___verbose) {assert(1);} } \ + void __attribute__ ((constructor)) name(void); + .fi +-.SS "#define QB_LOG_MAX_LEN 512" +- +-.SS "#define QB_LOG_STDERR 1" +- +-.SS "#define QB_LOG_STDOUT 3" +- +-.SS "#define QB_LOG_STRERROR_MAX_LEN 128" +- +-.SS "#define QB_LOG_SYSLOG 0" +- +-.SS "#define QB_LOG_TAG_LIBQB_MSG (1 << \fBQB_LOG_TAG_LIBQB_MSG_BIT\fP)" +- +-.SS "#define QB_LOG_TAG_LIBQB_MSG_BIT 31" +- +-.SS "#define QB_LOG_TARGET_MAX 32" +- +-.SS "#define qb_logt(\fBpriority\fP, \fBtags\fP, fmt, args\&.\&.\&.)" +-\fBValue:\fP ++.SS "#define \fBQB_LOG_MAX_LEN\fP 512" ++.SS "#define \fBQB_LOG_STDERR\fP 1" ++.SS "#define \fBQB_LOG_STDOUT\fP 3" ++.SS "#define \fBQB_LOG_STRERROR_MAX_LEN\fP 128" ++.SS "#define \fBQB_LOG_SYSLOG\fP 0" ++.SS "#define \fBQB_LOG_TAG_LIBQB_MSG\fP (1 << \fBQB_LOG_TAG_LIBQB_MSG_BIT\fP)" ++.SS "#define \fBQB_LOG_TAG_LIBQB_MSG_BIT\fP 31" ++.SS "#define \fBQB_LOG_TARGET_MAX\fP 32" ++.SS "#define \fBqb_logt\fP(\fBpriority\fP, \fBtags\fP, fmt, args\&.\&.\&.)"\fBValue:\fP + .PP + .nf + do { \ +@@ -569,8 +554,7 @@ This is the function to generate a log m + .RE + .PP + +-.SS "#define qb_perror(\fBpriority\fP, fmt, args\&.\&.\&.)" +-\fBValue:\fP ++.SS "#define \fBqb_perror\fP(\fBpriority\fP, fmt, args\&.\&.\&.)"\fBValue:\fP + .PP + .nf + do { \ +@@ -592,24 +576,17 @@ This is similar to perror except it goes + + .SH "Typedef Documentation" + .PP +-.SS "typedef void(* qb_log_close_fn)(int32_t t)" +- +-.SS "typedef void(* qb_log_filter_fn)(struct \fBqb_log_callsite\fP *cs)" +- +-.SS "typedef void(* qb_log_logger_fn)(int32_t t, struct \fBqb_log_callsite\fP *cs, time_t timestamp, const char *msg)" +- +-.SS "typedef void(* qb_log_reload_fn)(int32_t t)" +- +-.SS "typedef const char*(* qb_log_tags_stringify_fn)(uint32_t \fBtags\fP)" +- +-.SS "typedef void(* qb_log_vlogger_fn)(int32_t t, struct \fBqb_log_callsite\fP *cs, time_t timestamp, va_list ap)" +- ++.SS "typedef void(* \fBqb_log_close_fn\fP)(int32_t t)" ++.SS "typedef void(* \fBqb_log_filter_fn\fP)(struct \fBqb_log_callsite\fP *cs)" ++.SS "typedef void(* \fBqb_log_logger_fn\fP)(int32_t t, struct \fBqb_log_callsite\fP *cs, time_t timestamp, const char *msg)" ++.SS "typedef void(* \fBqb_log_reload_fn\fP)(int32_t t)" ++.SS "typedef const char*(* \fBqb_log_tags_stringify_fn\fP)(uint32_t \fBtags\fP)" ++.SS "typedef void(* \fBqb_log_vlogger_fn\fP)(int32_t t, struct \fBqb_log_callsite\fP *cs, time_t timestamp, va_list ap)" + .SH "Enumeration Type Documentation" + .PP + .SS "enum \fBqb_log_conf\fP" +- + .PP +-\fBEnumerator\fP ++\fBEnumerator: \fP + .in +1c + .TP + \fB\fIQB_LOG_CONF_ENABLED \fP\fP +@@ -627,10 +604,10 @@ This is similar to perror except it goes + \fB\fIQB_LOG_CONF_STATE_GET \fP\fP + .TP + \fB\fIQB_LOG_CONF_FILE_SYNC \fP\fP +-.SS "enum \fBqb_log_filter_conf\fP" + ++.SS "enum \fBqb_log_filter_conf\fP" + .PP +-\fBEnumerator\fP ++\fBEnumerator: \fP + .in +1c + .TP + \fB\fIQB_LOG_FILTER_ADD \fP\fP +@@ -644,10 +621,10 @@ This is similar to perror except it goes + \fB\fIQB_LOG_TAG_CLEAR \fP\fP + .TP + \fB\fIQB_LOG_TAG_CLEAR_ALL \fP\fP +-.SS "enum \fBqb_log_filter_type\fP" + ++.SS "enum \fBqb_log_filter_type\fP" + .PP +-\fBEnumerator\fP ++\fBEnumerator: \fP + .in +1c + .TP + \fB\fIQB_LOG_FILTER_FILE \fP\fP +@@ -655,10 +632,10 @@ This is similar to perror except it goes + \fB\fIQB_LOG_FILTER_FUNCTION \fP\fP + .TP + \fB\fIQB_LOG_FILTER_FORMAT \fP\fP +-.SS "enum \fBqb_log_target_state\fP" + ++.SS "enum \fBqb_log_target_state\fP" + .PP +-\fBEnumerator\fP ++\fBEnumerator: \fP + .in +1c + .TP + \fB\fIQB_LOG_STATE_UNUSED \fP\fP +@@ -666,20 +643,17 @@ This is similar to perror except it goes + \fB\fIQB_LOG_STATE_DISABLED \fP\fP + .TP + \fB\fIQB_LOG_STATE_ENABLED \fP\fP ++ + .SH "Function Documentation" + .PP +-.SS "struct \fBqb_log_callsite\fP __attribute__ ((aligned(8)))" +- +-.SS "void qb_log_blackbox_print_from_file (const char *filename)" +- ++.SS "struct \fBqb_log_callsite\fP \fB__attribute__\fP ((aligned(8)))" ++.SS "void \fBqb_log_blackbox_print_from_file\fP (const char *filename)" + .PP + Read the blackbox for file and print it out\&. +-.SS "ssize_t qb_log_blackbox_write_to_file (const char *filename)" +- ++.SS "ssize_t \fBqb_log_blackbox_write_to_file\fP (const char *filename)" + .PP + Write the blackbox to file\&. +-.SS