Sync from SUSE:ALP:Source:Standard:1.0 libqb revision 9d3bf59f35ba12c83397b6490fe367aa

This commit is contained in:
Adrian Schröter 2023-12-19 14:48:59 +01:00
commit 0f3e3c3913
7 changed files with 826 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

24
_service Normal file
View File

@ -0,0 +1,24 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/ClusterLabs/libqb.git</param>
<param name="package-meta">yes</param>
<param name="exclude">.git</param>
<!--
To update to a new release, change "revision" to the desired
git commit hash and bump "version" if necessary
<param name="version">2.0.8</param>
-->
<param name="versionformat">2.0.8+%cd.%h</param>
<param name="revision">v2.0.8</param>
<param name="changesgenerate">enable</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">libqb*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="disabled"/>
</services>

8
_servicedata Normal file
View File

@ -0,0 +1,8 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://github.com/ClusterLabs/libqb.git</param>
<param name="changesrevision">a2691b96188033b5ad5c08871982048ae1f4f4e8</param>
</service>
<service name="tar_scm">
<param name="url">https://github.com/ClusterLabs/libqb.git</param>
<param name="changesrevision">002171bbcf4bc4728da56c1538afd9e9d814ecaf</param></service></servicedata>

4
baselibs.conf Normal file
View File

@ -0,0 +1,4 @@
libqb100
libqb-devel
requires -libqb-<targettype>
requires "libqb100-<targettype> = <version>"

BIN
libqb-2.0.8+20230721.002171b.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

605
libqb.changes Normal file
View File

@ -0,0 +1,605 @@
-------------------------------------------------------------------
Mon Jul 24 09:15:39 UTC 2023 - Yan Gao <ygao@suse.com>
- Update to version 2.0.8+20230721.002171b (v2.0.8):
- log: fix potential overflow with long log messages (gh#ClusterLabs/libqb#490, CVE-2023-39976, bsc#1214066)
-------------------------------------------------------------------
Mon Jun 19 18:31:05 UTC 2023 - Yan Gao <ygao@suse.com>
- Update to version 2.0.7+20230607.06c8641 (v2.0.7):
- blackbox: fix potential overlow/memory corruption (gh#ClusterLabs/libqb#486)
- tests: allow -j to work (gh#ClusterLabs/libqb#485)
- strlcpy: avoid compiler warning from strncpy (gh#ClusterLabs/libqb#473)
- timer: Move state check to before time check (gh#ClusterLabs/libqb#479)
- ipc: Retry receiving credentials if the the message is short (gh#ClusterLabs/libqb#476, rh#2111711)
- lib: Fix some small bugs spotted by newest covscan (gh#ClusterLabs/libqb#471)
- doxygen2man: Fix function parameter alignment (gh#ClusterLabs/libqb#468)
-------------------------------------------------------------------
Thu Apr 21 07:50:45 UTC 2022 - Dirk Müller <dmueller@suse.com>
- Make sure that the libstat_wrapper.so library is included in the libqb-tests RPM (when built)
-------------------------------------------------------------------
Wed Mar 23 15:50:36 UTC 2022 - Yan Gao <ygao@suse.com>
- Update to version 2.0.6+20220323.758044b (v2.0.6):
- test: Include ipc_sock.test in the libqb-tests rpm (gh#ClusterLabs/libqb##463)
-------------------------------------------------------------------
Wed Mar 23 13:44:10 UTC 2022 - Yan Gao <ygao@suse.com>
- Update to version 2.0.5+20220321.ccdaada (v2.0.5):
- blackbox: Sanitize items read from the blackbox header (gh#ClusterLabs/libqb#438)
- ipcc: Fix errno returned from qb_ipcc_connect (gh#ClusterLabs/libqb#460)
- util: reimplement time functions as a series of fallbacks (gh#ClusterLabs/libqb#457)
- util: use HAVE_GETTIMEOFDAY where appropriate
- Retry if posix_fallocate is interrupted with EINTR (#453) (gh#ClusterLabs/libqb#451, bsc#1193737, bsc#1193912)
- Merge:
* bsc#1193737-0001-Retry-if-posix_fallocate-is-interrupted-with-EINTR-4.patch
- ipcc: Add an async connect API (gh#ClusterLabs/libqb#450)
-------------------------------------------------------------------
Fri Jan 14 08:06:10 UTC 2022 - Yan Gao <ygao@suse.com>
- Retry if posix_fallocate is interrupted with EINTR (#453) (gh#ClusterLabs/libqb#451, bsc#1193737, bsc#1193912)
* bsc#1193737-0001-Retry-if-posix_fallocate-is-interrupted-with-EINTR-4.patch
-------------------------------------------------------------------
Thu Nov 25 15:05:06 UTC 2021 - Dominique Leuenberger <dimstar@opensuse.org>
- Inject package version differently into the build system
(boo#1193087):
+ Drop libqb-configure-package-version.patch
+ copy the package version into .tarball-version (if it does not
exist and we would happen to use a tarball to build).
-------------------------------------------------------------------
Tue Nov 16 08:42:20 UTC 2021 - Yan Gao <ygao@suse.com>
- Update to version 2.0.4+20211112.a2691b9 (v2.0.4):
- poll: Don't log in a signal handler (gh#ClusterLabs/libqb##447)
- Fix pthread returns (gh#ClusterLabs/libqb#444)
- doxygen2man: print structure descriptions (gh#ClusterLabs/libqb#443)
- Implement heap based timer list (gh#ClusterLabs/libqb#439)
-------------------------------------------------------------------
Thu Oct 07 11:39:16 UTC 2021 - Yan Gao <ygao@suse.com>
- Update to version 2.0.3+20210303.404adbc (v2.0.3):
- syslog: Add a message-id parameter for messages (gh#ClusterLabs/libqb#433)
- timers: Add some locking (gh#ClusterLabs/libqb#436)
- ipcc: Have a few goes at tidying up after a dead server (gh#ClusterLabs/libqb#434)
- strlcpy: Check for maxlen underflow (gh#ClusterLabs/libqb#432)
- doxygen2man: fix printing of lines starting with '.' (gh#ClusterLabs/libqb#431)
- doxygen2man: ignore all-whitespace brief descriptions (gh#ClusterLabs/libqb#430)
-------------------------------------------------------------------
Fri Dec 04 09:35:51 UTC 2020 - Yan Gao <ygao@suse.com>
- Update to version 2.0.2+20201203.def947e (v2.0.2):
- ipcs : Decrease log level. (#426)
- cov: Quieten some covscan warnings (#427)
- doxygen2man: Fix a couple of covscan-detected errors (#425)
- ipcs: Add missing qb_list_del when freeing server (#423) (gh#ClusterLabs/libqb#422)
- ipc: add qb_ipcc_auth_get() API call (#418)
- doxygen2man: Remove horrible hack (#420) (gh#ClusterLabs/libqb#419)
- doxygen2man: Add support for @code blocks (#417)
- man: Tidy man pages (#416)
- doxygen2man: Add option to read copyright line from the header file (#415) (gh#ClusterLabs/libqb#414)
-------------------------------------------------------------------
Wed Aug 26 10:29:23 UTC 2020 - Yan Gao <ygao@suse.com>
- Update to version 2.0.1+20200729.416caf2 (v2.0.1):
- unix.c: use posix_fallocate() (#409)
- doxygen2man: Tidy RETURN VALUE
- doxygen2man - Print structure descriptions (where available) (#408)
- Make manpages (#405)
- doxygen2man: Fix a couple of the worst coverity errors (#404)
- doxygen2man - Lots of new features & fixes for parsing libqb manpages (#402)
- array: More locking fixes (#400)
- log: Fix threading races (#396)
- Some bugs spotted by coverity (#399)
-------------------------------------------------------------------
Mon May 04 11:22:11 UTC 2020 - Yan Gao <ygao@suse.com>
- Update to version 2.0.0+20200504.803d924 (v2.0.0):
- log: journal: fix forgotten syslog reload when flipped from journal
- Let remote_tempdir() assume a NUL-terminated name
- Make it impossible to truncate or overflow the connection description
- master: Issue 390: Clarify documentation of qb_loop_timer_expire_time_get and provide new function to return previously documented behavior (#391) (gh#ClusterLabs/libqb#390)
-------------------------------------------------------------------
Mon May 04 11:20:23 UTC 2020 - Yan Gao <ygao@suse.com>
- Update to version 1.9.1+20200318.93f9975 (v1.9.1):
- Doxygen2man (#388)
- trie: Don't assume that chars are unsigned < 126 (#386)
- list: fix list handling for gcc10 (#383)
- Set correct ownership if qb_ipcs_connection_auth_set() has been used (gh#ClusterLabs/libqb#369, rh#1836146)
- Allow group access to the IPC directory
- Errors are represented as negative values
-------------------------------------------------------------------
Mon May 04 11:17:51 UTC 2020 - Yan Gao <ygao@suse.com>
- Update to version 1.9.0+20191211.51a03aa (v1.9.0):
- lib: Fix some minor warnings from newer compilers
- ipc: Always initialize response struct
- ringbuffer: fix mistaken errno handling around _rb_chunk_reclaim
- array,log: Never set errno to a negative value
- log: Set errno when qb_log_target_alloc() fails
- ipc: Remove kqueue EOF log message
- ipc: fix force-filesystem-sockets
- IPC: server: avoid temporary channel priority loss, up to deadlock-worth (gh#ClusterLabs/libqb#352, rh#1718773, bsc#1188212)
- ipc: Use mkdtemp for more secure IPC files
-------------------------------------------------------------------
Wed Jun 19 11:39:27 UTC 2019 - Yan Gao <ygao@suse.com>
- Update to version 1.0.3+20190408.7cd7b06:
- ipc: fixes (CVE-2019-12779, bsc#1137835)
- Merge:
* bsc#1137835-0002-ipc-fixes.patch
- ipc: use O_EXCL on SHM files, and randomize the names (CVE-2019-12779, bsc#1137835)
- Merge:
* bsc#1137835-0001-ipc-use-O_EXCL-on-SHM-files-and-randomize-the-names.patch
-------------------------------------------------------------------
Tue Apr 2 16:48:36 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Drop manual requires from libqb-tests.
- Let libqb-devel depend on the exact package, libqb20 not just
a virtual libqb provide.
- Drop redundant %if..%endif guards that do not affect the build.
-------------------------------------------------------------------
Tue Apr 2 09:17:01 UTC 2019 - Yan Gao <ygao@suse.com>
- Update to version 1.0.3+20190326.a521604:
- enable building / shipping of libqb-tests.rpm (bsc#1131328)
-------------------------------------------------------------------
Thu Feb 7 16:48:54 UTC 2019 - ygao@suse.com
- spec: libqb-tools conflicts with libqb0 <= 1.0.3
-------------------------------------------------------------------
Tue Jan 29 16:34:09 UTC 2019 - ygao@suse.com
- spec: libqb20 provides libqb-%{version}-%{release}
- spec: add missing COPYING in libqb20 package
-------------------------------------------------------------------
Tue Jan 29 12:21:19 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Trim filler wording from descriptions. Remove unnecesary
pkgconfig Requires (automatically discovered).
- Split non-library parts of libqb20 into libqb-tools.
-------------------------------------------------------------------
Thu Jan 24 13:24:10 UTC 2019 - ygao@suse.com
- Update to version 1.0.3+20190115.c880fcf:
- Add Pthreads (and possibly other) flags to the pkg-config file (#332)
- skiplist: Fix previous skiplist fix
-------------------------------------------------------------------
Mon Nov 12 16:35:19 UTC 2018 - ygao@suse.com
- Update to version 1.0.3+20181112.926e851:
- log: Remove more dead code from linker callsites (#331) (bsc#1074327, bsc#1098449)
- Add the option of hi-res (millisecond) timestamps (#329)
- log: Add configure-time option to use systemd journal instead of syslog (#327)
- log: Add option to re-open a log file (#326)
- skiplist: fix use-after-free in the skiplist traversal
-------------------------------------------------------------------
Mon Oct 1 14:57:23 UTC 2018 - ygao@suse.com
- Update to version 1.0.3+20180927.633f262:
- logging: Remove linker 'magic' and just use statics for logging callsites (#322) (bsc#1074327, bsc#1098449)
- log: Use RTLD_NOOPEN when checking symbols (#310)
- low customisable log line length (#292)
- ipc_shm: Don't truncate SHM files of an active server (#307)
-------------------------------------------------------------------
Tue Jan 2 10:08:14 UTC 2018 - ygao@suse.com
- Update to version 1.0.3+20171226.6d62b64:
- build: fix configure script neglecting, re-enable out-of-tree builds
-------------------------------------------------------------------
Fri Dec 22 03:45:53 UTC 2017 - ygao@suse.com
- Update to version 1.0.3
- warnings cleanup: fix initialiser warning
- warnings cleanup: Wformat: sign-correct PRIu32 specifiers as appropriate
- warnings cleanup: Wsign-compare: log_format: int32_t -> size_t
- warnings cleanup: Wsign-compare: hdb: uint32_t <-> int32_t
- warnings cleanup: Wsign-compare: array: int32_t -> size_t
- warnings cleanup: hdb+loop_timerlist: Wsign-compare: (canary?) variables
- warnings cleanup: Wshift-overflow: trigger arithmetic conv. to unsigned
- Upstream version cs: 28dff090c74b6ba8609c4797294a5afe3fe73987 (v1.0.3)
-------------------------------------------------------------------
Thu Dec 14 14:26:00 UTC 2017 - ygao@suse.com
- fix internal object symbol's leak & expose run-time lib version (bsc#1074327)
- bare fix for libqb logging not working with ld.bfd/binutils 2.29+ (bsc#1074327)
- add extra run-time (client, libqb) checks that logging will work (bsc#1074327)
- tests: add a script to generate callsite-heavy logging client... (bsc#1074327)
- tests: new sort of tests dubbed "functional", cover linker vs. logging (bsc#1074327)
- configure: check section boundary symbols present in the test (bsc#1074327)
- qblog.h: better explanation + behaviour of QB_LOG_INIT_DATA (bsc#1074327)
- log: use fdatasync instead of fsync where possible (#263)
- Upstream version cs: c011b12fcaf093f0463901154c475905f51d783a
-------------------------------------------------------------------
Fri Jul 21 09:46:28 UTC 2017 - ygao@suse.com
- loop: don't bring runtime down for a trivial API misuse
- Upstream version cs: ef4c3a15ea3d3c5d5f9364269cd02d78a308957b
-------------------------------------------------------------------
Fri Jul 21 09:24:25 UTC 2017 - ygao@suse.com
- Update to version 1.0.2
- Memleak fixes (#194)
- Allow Linux to use filesystem sockets (#248) (fate#323415)
- Upstream version cs: 608de6d59a3de0eef0fbcbd8f284acbc018daa9a (v1.0.2)
-------------------------------------------------------------------
Mon Mar 6 15:49:36 UTC 2017 - ygao@suse.com
- loop: Fix splint error
- loop: Also set signals changed in qb_loop_signal_mod() back to SIG_DFL (bsc#1026176)
- loop: don't override external signal handlers (bsc#1026176)
- Upstream version cs: 59eacf07dd92af6917ed351c0c5e51ec5237965c
-------------------------------------------------------------------
Wed Feb 22 13:08:00 UTC 2017 - jengelh@inai.de
- RPM group fix; use find -delete over rm.
-------------------------------------------------------------------
Mon Feb 20 16:50:39 UTC 2017 - ygao@suse.com
- [ringbuffer] Return error from peek if RB is corrupted. (bsc#1026176)
- build: drop allegedly no longer intrusive syslog-tests opt-in switch
- Upstream version cs: afdff97f1af8e1be916816ad8b6d5530fa7c6637
-------------------------------------------------------------------
Mon Feb 20 16:48:52 UTC 2017 - ygao@suse.com
- version: Update version for 1.0.1 release
- rb: use new qb_rb_close_helper able to resort to file truncating (bsc#1026176)
- rb: make it more robust against trivial IPC API misuses (bsc#1026176)
- log_thread: logt_wthread_lock is vital for logging thread (bsc#1026176)
- log: Don't overwrite valid tags (bsc#1026176)
- ipc_shm: fix superfluous NULL check
- log: Add missing z,j, & t types to the logger (bsc#1026176)
- log: check for appropriate space when serializing a char (bsc#1026176)
- Upstream version cs: 0a329683a76bc6aeb36f20f2bf6b43ba0440c4dc (v1.0.1)
-------------------------------------------------------------------
Fri Apr 15 12:47:35 UTC 2016 - ygao@suse.com
- further avoid magic in qblog.h by using named constants
- defs: add wrappers over preprocessor operators
- Upstream version cs: 6f2b3e85d0315288ee76869b99369e2b1f2f1b71
-------------------------------------------------------------------
Fri Apr 1 13:35:04 UTC 2016 - ygao@suse.com
- Update to version 1.0.0
- build: update library soname to 0.18.0
- build: enable syslog tests when configuring in spec
- log: allow changing the identifier for syslog (+tests)
- ipc: return -errno when getsockopt/setsockopt fail
- ipc: set socket buffer size used by ipcs service
- ipc: set socket receive buffer
- includes: format __attribute__ func. annotations in qblog.h
- spec cleanup: get rid of redundant %clean section
- ipc: set gid on unix sockets
- lib: store server peer credentials in qb_ipcc_connection
- lib: create mmap files in socket directory
- includes: Fix format string
- ipc: Prevent fd and memory leaks in handle_new_connection() (bsc#947341)
* Drop bug-947341_libqb-ipc-fd-memory-leaks.patch which has been merged upstream
- Upstream version cs: 6fc24f855bfc8dadb4c84bf823b225680670b1c3 (v1.0)
-------------------------------------------------------------------
Thu Oct 8 13:18:22 UTC 2015 - ygao@suse.com
- ipc: Prevent fd and memory leaks in handle_new_connection() (bsc#947341)
* bug-947341_libqb-ipc-fd-memory-leaks.patch
-------------------------------------------------------------------
Thu Oct 8 13:15:12 UTC 2015 - ygao@suse.com
- log: don't call dlopen inside dl_iterate_phdr()
- ipc: Don't send the dispatch_del() function a closed fd
- Upstream version cs: 1a7ea3b8d8bf9d5ffbbfdc785ace2b81e9f2356d
-------------------------------------------------------------------
Thu Aug 27 16:16:14 UTC 2015 - ygao@suse.com
- Update to version 0.17.2 (bsc#943486)
- ipcc: valgrind "invalid file descriptor" warning
- ipc: Increase the length of description field.
- Upstream version cs: 4d817cc7e0b620acda8cc45266dc085c5bf48c59
-------------------------------------------------------------------
Wed Jun 3 13:22:03 UTC 2015 - ygao@suse.com
- log: Implement "extended" logging using a marker character
- Upstream version cs: 35faa45558b0ae44e3a244fbd3e8f9405d535526
-------------------------------------------------------------------
Thu Apr 30 12:30:07 UTC 2015 - ygao@suse.com
- loop: fixes resource starvation in mainloop code (bsc#929835)
- Upstream version cs: c3bcf25b72bf451c2ef79ec3946a1c48077a50a0
-------------------------------------------------------------------
Mon Mar 9 16:10:28 UTC 2015 - ygao@suse.com
- ipc_setup: yield to scheduler during new connection auth processing
- kqueue: The udata member of the kevent struct is a void *
- Upstream version cs: 83552692aa5425e50049b130eb2e17ea7b31217d
-------------------------------------------------------------------
Tue Oct 21 10:15:58 UTC 2014 - ygao@suse.com
- Bump release version to 0.17.1
- check_ipc.c: improve error checking during ipc stress tests
- ipcs: Correctly allocate receive buffer size
- ipc_socket: Signalhandler must be resetted to Default, use only cleanup_sigpipe to return from qb_ipc_dgram_sock_setup.
- trie: allow modifying the trie map during the notify callback
- Upstream version cs: 3f7de657855bb9fb4e58777851735bf663fa7f3f
-------------------------------------------------------------------
Mon Jul 28 05:57:43 UTC 2014 - ygao@suse.com
- log: return filter type enum to preserve abi compatibilty with corosync
- Upstream version cs: e5b8950863b92b314675ba0cbba13f00b8b77c52
-------------------------------------------------------------------
Tue Jul 1 09:08:05 UTC 2014 - ygao@suse.com
- epoll: don't miss poll events under high load
- ipc_shm: fix error handling in qb_ipcs_shm_connect()
- ringbuffer: fix size in qb_rb_create_from_file()
- trie: cleanup ref count logic in trie_notify_del
- ipcs: Cleanup unnecessary reference counting
- Upstream version cs: b103e1ae61f6fc288cfb228344f24508adaaba9a
-------------------------------------------------------------------
Fri Mar 21 06:36:02 UTC 2014 - ygao@suse.com
- ipcc: Properly timeout during recv when timeout value is provided
- Upstream version cs: c6f4fcd778248c41e5b108159d00cf1798a296d4
-------------------------------------------------------------------
Thu Feb 20 11:37:57 UTC 2014 - ygao@suse.com
- Bump version to 0.17.0
- ipc_socket: further optimize max msg size calculations for fbsd portability tests
- ipc_socket: Allow socket max msg size to be calculated more accurately
- Upstream version cs: 78978d07ac2f19a801ebde61379ac55359cc17f3
-------------------------------------------------------------------
Sat Feb 8 15:23:07 UTC 2014 - ygao@suse.com
- ipcs: Prevent ipc server use after free.
- Upstream version cs: 29bbe615b5fe6da17db3d6774df557960ae78bbb
-------------------------------------------------------------------
Fri Jan 17 13:34:43 UTC 2014 - ygao@suse.com
- ipc: Remove ipc connection reference given to dispatch functions (bnc#857779)
- ipc: Fixes memory leak in server connection accept when client partially connects (bnc#857779)
- Upstream version cs: d9706f75619976e334a109d0dbfdeac3b1074fe4
-------------------------------------------------------------------
Thu Jan 9 15:18:57 UTC 2014 - ygao@suse.com
- IPC: Increase the listen backlog of IPC server (bnc#857779)
- Upstream version cs: b579f7af151f453a870bbaac037084df13b45ef9
-------------------------------------------------------------------
Mon Nov 25 14:30:05 UTC 2013 - ygao@suse.com
- New api function to retrieve client buffer size
- Enforce buffer size limits on the server side
- Filter logs using regex patter on function, format, or filename
- Upstream version cs: b09473fd4a03b4434efd44408f7ae631a855f9cd
-------------------------------------------------------------------
Sat Nov 16 13:00:12 UTC 2013 - ygao@suse.com
- Add libqb-configure-package-version.patch
* Build: Generate PACKAGE_VERSION according to the basename of the top directory
-------------------------------------------------------------------
Wed Oct 23 15:16:01 UTC 2013 - ygao@suse.com
- ipc_setup: Set SO_PASSCRED on listener socket
- log: Filtering by function and file must match exactly, no substring matches
- blackbox: Abort blackbox logging on ringbuffer overwrite reclaim error
- ipcs: Api function allowing server to retrieve client connection's ipc buffer size
- ringbuffer: Abort during chunk reclaim if OVERWRITE flag is set and reclaim fails.
- blackbox: unique blackbox ringbuffer files per pid
- ipc_socket: Fixes fd leak in socket ipc client disconnection
- Detect the max signal value that can be used using NSIG macro
- Avoid double-decrement of level->todo
- Upstream version cs: b4c36efff8b91f287da87590911a01184243cf64
-------------------------------------------------------------------
Tue Sep 24 11:57:57 UTC 2013 - ygao@suse.com
- Add baselibs.conf
-------------------------------------------------------------------
Fri Jul 26 01:19:30 UTC 2013 - ygao@suse.com
- Bump version to 0.16.0
- ipc_socket.c: Detect EOF connection on connection STREAM socket
- ipc_socket.c: Handle the unlikely event of an EAGAIN or EINTR during dgram max size detection
- Fixes sem leak
- Fixes less-than-zero comparision of unsigned int
- Fixes double fd close
- Fixes fd leak
- Fixes use ater free in shm disconnect
- Fixes use after free during ipcs client disconnect
- ipcc: Add abilty to verify dgram kernel buffer size meets max msg value
- Upstream version cs: 75f7ed373758b3cb9087e89e4fae17379dd7b483 (v0.16.0)
-------------------------------------------------------------------
Mon Jul 22 07:38:56 UTC 2013 - ygao@suse.com
- ringbuffer: Make max_size of ringbuffer accurate so shm ipc max msg size value is honored
- ipcs: For shm ipc, always retry outstanding notifications when next event is sent
- ipc_socket: In fbsd send() returns ENOBUFS when dgram queue is full, this should be treated similar to EAGAIN
- kqueue: Properly enable kqueue filter in poll loop
- ipcs: Attempt to resend outstanding event notifications during event send
- ipcs: Disconnect shm ipc connection when poll socket returns error on msg receive
- ipcs: Properly disconnect client connection on POLLNVAL or any other error causing connection removal from mainloop.
- Upstream version cs: 39e9ef542dc89893c7c5af4fbd539338266e8031
-------------------------------------------------------------------
Tue Jul 2 12:02:52 UTC 2013 - coolo@suse.com
- disable _service services to be acceptable for factory. To
update tar, run osc service dr
-------------------------------------------------------------------
Tue Jul 2 10:39:34 UTC 2013 - ygao@suse.com
- Simplify internal ipcs ref counting, add comments and document api behavior
- Simplifies connection ref counting without changing behavior
- Fix: refcount leak
- Fix: ringbuffer: Add file header version field and detect reading corrupted blackbox files using hash value
- fix a problem when the character string beyond the number of the maximum characters is passed
- Add a IPC service context pointer and accessors from both the connection and service level.
- ringbuffer: use atomic ops on ringbuffer chunk magic
- IPC: make each connection ref the owning service
- Indicate when/why qb_rb_force_close() fails to remove share memory files
- Deal better with corrupt blackbox files.
- Upstream version cs: 7c6e109046ec772a97a7fe2cdf61f84fc2155b7e
-------------------------------------------------------------------
Thu Mar 28 09:42:40 UTC 2013 - ygao@suse.com
- IPC: fix the connection state checking
- LOG: copy the function/filename for dynamic callsites
- Properly discover SO_NOSIGPIPE and MSG_SIGNAL
- IPC: fix call to QB_SUN_LEN
- list: don't splice empty lists onto the head.
- rpl_sem: make destroy more compliant
- RB: make the "sem" abstraction into a notifier
- Upstream version cs: 258e86583ecd2437161211b9d70bc69229630e7e
-------------------------------------------------------------------
Mon Feb 25 09:58:21 UTC 2013 - ygao@suse.com
- Use dgram sockets for message oriented communications
- IPC: don't interpret EMSGSIZE and ENOMSG as a disconnect
- POLL: prevent a spin if the fd is not removed from the mainloop
- Upstream version cs: 31d9f0900db728cfe182799b61b05759a6a26e8b
-------------------------------------------------------------------
Fri Feb 8 16:56:34 UTC 2013 - ygao@suse.com
- IPC: make sure we return a consistent error when the message is too big.
- Upstream version cs: 9d2eca251bdd1833889f42f4e60238c4c774906e
-------------------------------------------------------------------
Fri Jan 18 04:48:19 UTC 2013 - ygao@suse.com
- Bump the version to 0.14.4
- LOG: prevent the last char of the blackbox message from getting lost.
- Add the processing which remove notifier at skiplist_destroy function
- Add the processing which remove hash node and notifier at hashtable_destroy function
- Upstream version cs: 848242a7860c5a7e19240c2ded053fa9908af9e0
-------------------------------------------------------------------
Fri Jan 11 13:20:22 UTC 2013 - ygao@suse.com
- Fix return code which is an error occurred at pthread function
- LOG: fix truncation in some messages that get padded.
- Fix the blackbox formatter when specifing the string len/precision
- Fix strlcpy and strlcat functions
- IPC: don't over log on disconnect
- LOG: Make sure we don't use the format string whilst it is getting changed.
- Upstream version cs: eceee03a7bc4962a0b136c38344c7e0c16908489
-------------------------------------------------------------------
Sun Dec 9 14:23:26 UTC 2012 - ygao@suse.com
- ptrie: deref the current node in trie_iter_free()
- LOG: fix the format comparison to avoid generating multiple entries.
- LOG: set the return code when calloc fails
- Upstream version cs: 813dfb5fd2bce6ac1353b03b5bed3a7eb46dc278
-------------------------------------------------------------------
Tue Nov 20 11:20:48 UTC 2012 - ygao@suse.com
- FATE#313816: Use libqb for logging and IPC
-------------------------------------------------------------------
Fri Nov 16 06:24:09 UTC 2012 - ygao@suse.com
- Bump the version to 0.14.3
- IPC: call poll if we are mid message and get EAGAIN
- Make sure that mmap'ed files smaller than a page size are written to.
- IPC: Pass the timeout to poll() if the recv function returns EAGAIN
- LOG: make the format comparison safe and sane
- LOG: don't break on empty callsites, just ignore them
- LOG: use the array callback to register new callsites
- array: add a mechanism to get a callback when a bin is allocated
- Fix a crash in ptrie if you iterate over the map in the deleted notifier.
- Make sure atomic's are initialized (for non-gcc atomic).
- ipc_us: slightly more robust cmsg handling
- ipc_us: on Linux, set SO_PASSCRED on the sending socket too
- blackbox: fix 64-bit big-endian issues
- RB: change the #error to ENOTSUP if no usable shared process sem
- LOG: Make sure the semaphores are initialized.
- Upstream version cs: 709b32de434ec157ec2a73153e58ffec186ae660
-------------------------------------------------------------------
Fri Jul 20 02:56:12 UTC 2012 - ygao@suse.com
- Bump the version to 0.14.1
- RB: set the new read pointer after clearing the header.
- RB: if read or peek don't get the message then re-post to the semaphore
- IPC: use calloc instead of malloc to fix valgrind warnings
- Upstream version cs: 11b20e19beff7f1b6003be0b4c73da8ecf936442
-------------------------------------------------------------------
Mon Jun 25 10:46:03 UTC 2012 - tserong@suse.com
- Bump the version to 0.14.0
- Upstream version cs: 1c2b77f005a8011471af11839b7e1b67d147e10d
-------------------------------------------------------------------
Thu Jun 21 09:19:13 UTC 2012 - ygao@suse.com
- LOG: fix threaded logging.
- Add user control of the permissions that are set on the shared mem files
- Upstream version cs: b9f8ec34dfc25eb52f520fe76d8f97fe58da4dee
-------------------------------------------------------------------
Fri Jun 8 09:11:17 UTC 2012 - tserong@suse.com
- Initial SUSE packaging of libqb from upstream changeset
e70e7908f01ee17e9e8454602a5cfabe19ccc439

159
libqb.spec Normal file
View File

@ -0,0 +1,159 @@
#
# spec file for package libqb
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%bcond_without check
%bcond_without testsrpm
%bcond_without doxygen2man
Name: libqb
Version: 2.0.8+20230721.002171b
Release: 0
Summary: An IPC library for high performance servers
License: LGPL-2.1-or-later
Group: Development/Libraries/C and C++
URL: https://github.com/ClusterLabs/libqb
Source0: %{name}-%{version}.tar.xz
Source1: baselibs.conf
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: check-devel
BuildRequires: doxygen
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: procps
BuildRequires: util-linux
# Need git so build-aux/git-version-gen can extract the version number and
# commit hash during autogen run (not used currently)
#BuildRequires: git
%description
libqb is a library providing high performance client server reusable
features. It provides logging, tracing, IPC, and polling.
%package -n libqb100
Summary: An IPC library for high performance servers
Group: System/Libraries
%description -n libqb100
libqb is a library providing high performance client server reusable
features. It provides logging, tracing, IPC, and polling.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: libqb100 = %{version}-%{release}
%description devel
libqb is a library providing high performance client server reusable
features. It provides logging, tracing, IPC, and polling.
%package tools
Summary: Utilities from libqb, an IPC library
Group: Development/Tools/Other
Conflicts: libqb0 <= 1.0.3
Provides: libqb0:%{_sbindir}/qb-blackbox
%description tools
libqb is a library providing high performance client server reusable
features. It provides logging, tracing, IPC, and polling.
%prep
%setup -q -n %{name}-%{version}
%build
if [ ! -f .tarball-version ]; then
echo %{VERSION} > .tarball-version
fi
./autogen.sh
%configure \
%if %{with testsrpm}
--enable-install-tests \
%endif
--disable-static
%make_build
%if 0%{?with_check}
%check
# Tests require writable /dev/shm and /var/run
# TODO: This test might not be quite right -- it seems to fail on OBS,
# but OBS is capable of doing "make check" successfully, whereas
# "osc build" in a chroot fails.
if [ -w /dev/shm -a -w %{_localstatedir}/run ] ; then
%make_build check
fi
%endif
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
rm -rf %{buildroot}%{_datadir}/doc
%post -n libqb100 -p /sbin/ldconfig
%postun -n libqb100 -p /sbin/ldconfig
%files -n libqb100
%license COPYING
%{_libdir}/libqb.so.*
%files devel
%license COPYING
%doc README.markdown
%{_includedir}/qb/
%{_libdir}/libqb.so
%{_libdir}/pkgconfig/libqb.pc
%{_mandir}/man3/qb*3%{?ext_man}
%files tools
%license COPYING
%{_sbindir}/qb-blackbox
%{_mandir}/man8/qb-blackbox.8%{?ext_man}
%package tests
Summary: Test suite for %{name}
Group: Development/Tools/Other
%files tests
%license COPYING
%dir %{_libdir}/libqb
%dir %{_libdir}/libqb/tests
%{_libdir}/libqb/tests/*
%description tests
The %{name}-tests package contains the %{name} test suite.
%if %{with doxygen2man}
%package -n doxygen2man
Summary: tool to generate man pages from Doxygen XML files
Group: Development/Tools/Doc Generators
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libxml-2.0)
Requires: libqb100 = %{version}-%{release}
%files -n doxygen2man
%{_bindir}/doxygen2man
%{_mandir}/man1/doxygen2man.1%{?ext_man}
%license COPYING
%description -n doxygen2man
The doxygen2man package contains the doxygen2man utility.
%endif
%changelog