0809dd
%bcond_without check
0809dd
%bcond_without testsrpm
0809dd
0809dd
Name:           libqb
538049
Version:        2.0.6
b9e6e3
Release:        2%{?dist}
0809dd
Summary:        Library providing high performance logging, tracing, ipc, and poll
0809dd
0809dd
License:        LGPLv2+
0809dd
URL:            https://github.com/ClusterLabs/libqb
0809dd
Source0:        https://github.com/ClusterLabs/libqb/releases/download/v%{version}/%{name}-%{version}.tar.xz
0809dd
b9e6e3
Patch0:         bz2149647-connretry-recv.patch
0809dd
0809dd
BuildRequires:  autoconf automake libtool
0809dd
BuildRequires:  check-devel
0809dd
BuildRequires:  doxygen
0809dd
BuildRequires:  gcc
0809dd
BuildRequires:  procps
0809dd
# for ipc.test only (part of check scriptlet)
0809dd
BuildRequires:  pkgconfig(glib-2.0)
0809dd
# git-style patch application
0809dd
BuildRequires:  git-core
0809dd
# For doxygen2man
0809dd
BuildRequires:  libxml2-devel
0809dd
BuildRequires: make
0809dd
0809dd
%description
0809dd
A "Quite Boring" library that provides high-performance, reusable features for client-server
0809dd
architecture, such as logging, tracing, inter-process communication (IPC),
0809dd
and polling.
0809dd
0809dd
%prep
0809dd
%setup -q -n %{name}-%{version}
b9e6e3
%patch0 -p1 -b .bz2149647-connretry-recv.patch
0809dd
0809dd
%build
0809dd
./autogen.sh
0809dd
%configure \
0809dd
%if %{with testsrpm}
0809dd
 --enable-install-tests \
0809dd
     %endif
0809dd
 --disable-static
0809dd
%{make_build}
0809dd
0809dd
%if 0%{?with_check}
0809dd
%check
0809dd
make check V=1
0809dd
%endif
0809dd
0809dd
%install
0809dd
%{make_install}
0809dd
find $RPM_BUILD_ROOT -name '*.la' -delete
0809dd
rm -rf $RPM_BUILD_ROOT/%{_docdir}/*
0809dd
0809dd
%ldconfig_scriptlets
0809dd
0809dd
%files
0809dd
%license COPYING
0809dd
%{_sbindir}/qb-blackbox
0809dd
%{_libdir}/libqb.so.*
0809dd
%{_mandir}/man8/qb-blackbox.8*
0809dd
0809dd
%package        devel
0809dd
Summary:        Development files for %{name}
0809dd
Requires:       %{name}%{?_isa} = %{version}-%{release}
0809dd
Requires:       pkgconfig
0809dd
0809dd
%description    devel
0809dd
The %{name}-devel package contains libraries and header files for
0809dd
developing applications that use %{name}.
0809dd
0809dd
%files          devel
0809dd
%doc README.markdown
0809dd
%{_includedir}/qb/
0809dd
%{_libdir}/libqb.so
0809dd
%{_libdir}/pkgconfig/libqb.pc
0809dd
%{_mandir}/man3/qb*3*
0809dd
0809dd
%if %{with testsrpm}
0809dd
%package        tests
0809dd
Summary:        Test suite for %{name}
0809dd
Group:          Development/Libraries
0809dd
Requires:       %{name}%{?_isa} = %{version}-%{release}
0809dd
0809dd
%files          tests
0809dd
%doc COPYING
0809dd
%{_libdir}/libqb/tests/*
0809dd
0809dd
%description    tests
0809dd
The %{name}-tests package contains the %{name} test suite.
0809dd
%endif
0809dd
0809dd
0809dd
%package -n     doxygen2man
0809dd
Summary:        Program to create nicely-formatted man pages from Doxygen XML files
0809dd
Requires:       %{name}%{?_isa} = %{version}-%{release}
0809dd
0809dd
%description -n doxygen2man
0809dd
This package contains a program to create nicely-formatted man pages from Doxygen XML files
0809dd
0809dd
%files -n       doxygen2man
0809dd
%{_bindir}/doxygen2man
0809dd
%{_mandir}/man1/doxygen2man.1.gz
0809dd
0809dd
0809dd
%changelog
84836d
* Thu Dec  1 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.6-1
84836d
- ipc: Retry receiving credentials if the the message is short
84836d
  Resolves: rhbz2149647
b9e6e3
538049
* Wed Apr 20 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.6-1
538049
- Rebase to 2.0.6
538049
  Resolves: rhbz#2072903
0809dd
0809dd
* Thu Mar  3 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.3-8
0809dd
- Fix negative errno in qb_ipcc_connect (introduced in 2.0.3-4)
0809dd
  Resolves: rhbz#2057527
0809dd
0809dd
* Wed Jan 19 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.3-7
0809dd
- Bump soname for async-connect API addition
0809dd
  Resolves: rhbz#bz2031865
0809dd
0809dd
* Mon Jan 10 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.3-6
0809dd
- Fix gating.yaml for RHEL-9
0809dd
  Resolves: rhbz#bz2031865
0809dd
0809dd
* Mon Jan 10 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.3-5
0809dd
- Add gating.yaml from RHEL
0809dd
  Resolves: rhbz#bz2031865
0809dd
0809dd
* Fri Jan  7 2022 Christine Caulfield <ccaulfie@redhat.com> 2.0.3-4
0809dd
- Add async connect call for Pacemaker
0809dd
  Resolves: rhbz#bz2031865
0809dd
0809dd
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.0.3-3
0809dd
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
0809dd
  Related: rhbz#1991688
0809dd
0809dd
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 2.0.3-2
0809dd
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
0809dd
0809dd
* Wed Mar  3 2021 Christine Caulfield <ccaulfie@redhat.com> 2.0.3
0809dd
- Rebase to version 2.0.3
0809dd
0809dd
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-3
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
0809dd
0809dd
* Wed Jul 29 2020 Christine Caulfield <ccaulfie@redhat.com> 2.0.2
0809dd
- Rebase to version 2.0.2
0809dd
0809dd
* Wed Jul 29 2020 Christine Caulfield <ccaulfie@redhat.com> 2.0.1-2
0809dd
- Replace deprecated check macros fail_if() and fail_unless() with ck_assert()
0809dd
  see check BZ: bz1850198
0809dd
0809dd
* Wed Jul 29 2020 Christine Caulfield <ccaulfie@redhat.com> 2.0.1-1
0809dd
- Rebase to version 2.0.1
0809dd
0809dd
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
0809dd
0809dd
* Wed May 13 2020 Christine Caulfield <ccaulfie@redhat.com> 2.0.0-1
0809dd
- Rebase to version 2.0.0
0809dd
0809dd
* Thu Apr 23 2020 Christine Caulfield <ccaulfie@redhat.com> 1.0.5-6
0809dd
- Further fix for qblist when compiling on gcc10
0809dd
  Affects users of the package rather than libqb itself
0809dd
0809dd
* Mon Apr  6 2020 Peter Robinson <pbrobinson@fedoraproject.org> 1.0.5-5
0809dd
- Upstream fix for test failures (fix FTBFS)
0809dd
- spec cleanups
0809dd
0809dd
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-4
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
0809dd
0809dd
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.5-3
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
0809dd
0809dd
* Wed Jun 12 2019 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.5-2
0809dd
- Fix temporary channel priority loss, up to deadlock-worth
0809dd
  (upstream patchset https://github.com/ClusterLabs/libqb/pull/354)
0809dd
0809dd
* Fri Apr 26 2019 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.5-1
0809dd
- Update to libqb-1.0.5, for list of changes see:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0.4
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0.5
0809dd
  (note that 1.0.4 is botched from pacemaker/corosync cluster stack
0809dd
  perspective so that is intentionally skipped)
0809dd
- Includes an important fix for a security issue (CVE-2019-12779,
0809dd
  https://github.com/ClusterLabs/libqb/issues/338)
0809dd
0809dd
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.3-6
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
0809dd
0809dd
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.3-5
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
0809dd
0809dd
* Wed Mar 07 2018 Adam Williamson <awilliam@redhat.com> - 1.0.3-4
0809dd
- Rebuild to fix GCC 8 mis-compilation
0809dd
  See https://da.gd/YJVwk ("GCC 8 ABI change on x86_64")
0809dd
0809dd
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0.3-3
0809dd
- Escape macros in %%changelog
0809dd
0809dd
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.3-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
0809dd
0809dd
* Thu Dec 21 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.3-1
0809dd
- Update to libqb-1.0.3, for list of changes see:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0.3
0809dd
0809dd
* Tue Dec 12 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-15
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Wed Nov 15 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-14
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
- Make -devel package dependency on the main package arch-qualified
0809dd
0809dd
* Tue Oct 31 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-13
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Wed Oct 25 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-12
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Wed Oct 18 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-11
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Fri Oct 13 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-10
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Mon Oct 09 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-9
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Fri Oct 06 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-8
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
- New test included in check phase (as per upsteam)
0809dd
0809dd
* Mon Sep 04 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-7
0809dd
- Evolution of the previous (rhbz#1478089)
0809dd
0809dd
* Fri Sep 01 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-6
0809dd
- Better approach so as to mitigate changed treatment of orphaned sections
0809dd
  in ld.bfd/binutils-2.29, resulting in logging facility silently out of order
0809dd
  (rhbz#1478089)
0809dd
- Related to that, build commands now shown in full to ease the sanity checking
0809dd
- Adapt spec file per the upstream version (conditionalizing build through
0809dd
  --enable-syslog-tests no longer relevant since v1.0.2)
0809dd
0809dd
* Fri Aug 11 2017 Kalev Lember <klember@redhat.com> - 1.0.2-5
0809dd
- Bump and rebuild for an rpm signing issue
0809dd
0809dd
* Thu Aug 10 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-4
0809dd
- Mitigate changed treatment of orphaned sections in ld.bfd/binutils-2.29,
0809dd
  resulting in logging facility silently out of order (rhbz#1478089)
0809dd
0809dd
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-3
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
0809dd
0809dd
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
0809dd
0809dd
* Fri May 19 2017 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.2-1
0809dd
- Update to libqb-1.0.2, for list of changes see:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0.2
0809dd
0809dd
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
0809dd
0809dd
* Fri Nov 25 2016 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0.1-1
0809dd
- Update to libqb-1.0.1, for list of changes see:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0.1
0809dd
- Move qb-blackbox manual page from libqb-devel to libqb
0809dd
  (where the utility itself resides)
0809dd
0809dd
* Mon Apr 4 2016 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 1.0-1
0809dd
- Update to libqb-1.0, for list of changes see, in order:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0rc1
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0rc2
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0rc3
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0rc4
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v1.0
0809dd
- Adapt spec file per the upstream version (drop defattr statements,
0809dd
  autogen.sh call with %%build, conditionalize build process)
0809dd
- Add gcc as an explicit BuildRequires (required per the new guidelines)
0809dd
- Do not depend on the rpmbuild-imposed man page archiving method
0809dd
0809dd
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.2-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
0809dd
0809dd
* Thu Oct 15 2015 Jan Pokorný <jpokorny+rpm-libqb@redhat.com> - 0.17.2-1
0809dd
- Update to libqb-0.17.2 + fix check_ipc tests, for list of changes see:
0809dd
  https://github.com/ClusterLabs/libqb/releases/tag/v0.17.2
0809dd
0809dd
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.17.1-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
0809dd
0809dd
* Tue Aug 26 2014 David Vossel <dvossel@redhat.com> - 0.17.1-1
0809dd
Fix: ipcs: Correctly allocate receive buffer size
0809dd
Fix: ipc_socket: Signalhandler must be resetted to Default, use only cleanup_sigpipe to return from qb_ipc_dgram_sock_setup.
0809dd
Fix: trie: allow modifying the trie map during the notify callback
0809dd
Fix: fix invalid option when run 'ipcclient -h'
0809dd
Fix: epoll: don't miss poll events under high load
0809dd
Fix: ipc_shm: fix error handling in qb_ipcs_shm_connect()
0809dd
Fix: ringbuffer: fix size in qb_rb_create_from_file()
0809dd
Fix: ringbuffer: fix qb_rb_open_2() debug format string
0809dd
Fix: trie: fixes regression caused by ref count refactoring
0809dd
Fix: ipcc: Properly timeout during recv when timeout value is provided
0809dd
0809dd
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.17.0-4
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
0809dd
0809dd
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.17.0-3
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
0809dd
0809dd
0809dd
* Thu Feb 20 2014 David Vossel <dvossel@redhat.com> - 0.17.0-2
0809dd
Fix testsuite timing values
0809dd
0809dd
* Wed Feb 19 2014 David Vossel <dvossel@redhat.com> - 0.17.0-1
0809dd
Fix: build: Allow 'make rpm' to work with lightweight tags for release candidates
0809dd
Fix: spec: reference correct url in spec file
0809dd
Doc: update broken doxygen link to something that exists
0809dd
Bump version to 0.17.0
0809dd
Low: ipc_socket: further optimize max msg size calculations for fbsd portability tests
0809dd
Low: ipc_socket: Allow socket max msg size to be calculated more accurately
0809dd
Fix: fixes travis compile time error
0809dd
Low: tests: Fixes compile time issue with make check
0809dd
High: ipcs: Prevent ipc server use after free.
0809dd
Low: ipc: Remove ipc connection reference given to dispatch functions
0809dd
High: ipc: Fixes memory leak in server connection accept when client partially connects
0809dd
IPC: Increase the listen backlog of IPC server
0809dd
Low: ipcs: Clarifications to the ipcs server callback documentation.
0809dd
Fix rb.test to avoid overwriting memory during reading.
0809dd
Low: example: Update client/server example to use server enforced buffer size
0809dd
Low: Client side buffer retrieval regression test
0809dd
Feature: New api function to retrieve client buffer size
0809dd
Low: check_ipc.c: Verify server enforced buffer sizes work
0809dd
Feature: Enforce buffer size limits on the server side
0809dd
Low: regession tests for regex log filters
0809dd
Feature: Filter logs using regex patter on function, format, or filename
0809dd
ipc_setup: Set SO_PASSCRED on listener socket
0809dd
Fix: log: Filtering by function and file must match exactly, no substring matches
0809dd
Low: blackbox: Abort blackbox logging on ringbuffer overwrite reclaim error
0809dd
High: ipcs: Api function allowing server to retrieve client connection's ipc buffer size
0809dd
Low: ringbuffer: Abort during chunk reclaim if OVERWRITE flag is set and reclaim fails.
0809dd
High: blackbox: unique blackbox ringbuffer files per pid
0809dd
Low: ipc_socket: Fixes fd leak in socket ipc client disconnection
0809dd
Use sizeof to get the correct size of the sockaddr_un sun_path member in a portable way. Fixes corosync on Mac OS X.
0809dd
Detect the max signal value that can be used using NSIG macro
0809dd
Avoid double-decrement of level->todo
0809dd
0809dd
* Thu Aug 1 2013 David Vossel <dvossel@redhat.com> - 0.16.0-1
0809dd
Bump version to 0.16.0 ... do not use version 0.15.0
0809dd
Update release gpg sign key
0809dd
Bump the version to 0.15.0
0809dd
Merge pull request #83 from davidvossel/master
0809dd
Low: ipc_socket: Output send event failure as debug instead of error
0809dd
Low: ipcserver.c: Fix example server's glib mainloop implementation
0809dd
High: ipc_socket.c: Detect EOF connection on connection STREAM socket
0809dd
Merge pull request #81 from davidvossel/dgram_max_msg
0809dd
Low: tests: Add dgram max size detection test
0809dd
Low: ipc_socket.c: Handle the unlikely event of an EAGAIN or EINTR during dgram max size detection
0809dd
Merge pull request #82 from davidvossel/master
0809dd
Fixes detect disconnect on send for tcp example
0809dd
Fixes sem leak
0809dd
Fixes less-than-zero comparision of unsigned int
0809dd
fixes double close
0809dd
Fixes double close
0809dd
Fixes double fd close
0809dd
Fixes fd leak
0809dd
Prevent use after free in benchmark util
0809dd
Fixes use ater free in shm disconnect
0809dd
Fixes use after free during ipcs client disconnect
0809dd
Remove dead code
0809dd
Low: check_ipc.c: Verify dgram max size during tests
0809dd
High: ipcc: Add abilty to verify dgram kernel buffer size meets max msg value
0809dd
Fixes travis build error
0809dd
Merge pull request #80 from davidvossel/master
0809dd
Low: check_ipc.c: fix debug message to only display once.
0809dd
High: ringbuffer: Make max_size of ringbuffer accurate so shm ipc max msg size value is honored
0809dd
Low: ipcs: For shm ipc, always retry outstanding notifications when next event is sent
0809dd
Low: tests: Added test to verify sending ipc msg equal to max size succeeds
0809dd
Merge pull request #79 from davidvossel/master
0809dd
Merge pull request #78 from davidvossel/master
0809dd
Fix: ipcs: Fixes compile time issue reported by travis
0809dd
Merge pull request #77 from davidvossel/stress_tests_fixes
0809dd
Low: loop_pool_kqueue: remove potentially noisy dbug statement
0809dd
Low: tests: rework bulk event msg ipc test
0809dd
Account for fbsd ENOBUFS during stress test
0809dd
Low: tests: Adds ipc event stress test to testsuite
0809dd
Low: ipc_socket: In fbsd send() returns ENOBUFS when dgram queue is full, this should be treated similar to EAGAIN
0809dd
High: kqueue: Properly enable kqueue filter in poll loop
0809dd
Low: ipcs: Attempt to resend outstanding event notifications during event send
0809dd
Merge pull request #75 from davidvossel/ref_count_cleanup
0809dd
Low: qbipcs.h: update ipcs connection iterator documentation
0809dd
Merge pull request #74 from davidvossel/ref_count_cleanup
0809dd
Fix: ipcs: Disconnect shm ipc connection when poll socket returns error on msg receive
0809dd
Fix: ipcs: Properly disconnect client connection on POLLNVAL or any other error causing connection removal from mainloop.
0809dd
Simplify internal ipcs ref counting, add comments and document api behavior
0809dd
Simplifies connection ref counting without changing behavior
0809dd
Low remove ref-count error in example ipcserver.
0809dd
Merge pull request #73 from davidvossel/ref_count_cleanup
0809dd
Merge pull request #72 from davidvossel/master
0809dd
Low: tests: Verify reading valid blackbox file works
0809dd
Fix: refcount leak
0809dd
Fix: ringbuffer: Add file header version field and detect reading corrupted blackbox files using hash value
0809dd
Fix: tests: On some platforms -ECONNRESET is returned rather than -ENOTCONN after server failure
0809dd
Fix: tests: Make blackbox_segfault.sh not depend on bash
0809dd
Hopefully this is the last travis link fix
0809dd
Fix travis icon (travis is case sensitive)
0809dd
Fix the github links
0809dd
Merge pull request #70 from yuusuke/fix_logging
0809dd
fix a problem when the character string beyond the number of the maximum characters is passed
0809dd
Merge pull request #68 from r1mikey/upstream
0809dd
Add a IPC service context pointer and accessors from both the connection and service level.
0809dd
Enable distcheck on the travis tests
0809dd
Add atomic_int.h to noinst_HEADERS
0809dd
Use the new atomic ops in the ringbuffer
0809dd
Add internal support for the new __atomic gcc builtins
0809dd
Rename the configure macros from atomic to sync
0809dd
ringbuffer: use atomic ops on ringbuffer chunk magic
0809dd
Remove some test code mistakenly committed to the example program.
0809dd
IPC: make each connection ref the owning service
0809dd
Indicate when/why qb_rb_force_close() fails to remove share memory files
0809dd
Typo fixed in configure
0809dd
Fix "make srpm"
0809dd
Remove doxygen from travis deps to try and get the job working.
0809dd
Fix make distcheck
0809dd
Merge pull request #60 from t-matsuo/fix-makefile-of-tests
0809dd
add file_change_bytes into check_PROGRAMS and fix a typo
0809dd
Deal better with corrupt blackbox files.
0809dd
Merge pull request #58 from inouekazu/fix_connection_state_checking
0809dd
IPC: fix the connection state checking
0809dd
LOG: copy the function/filename for dynamic callsites
0809dd
Deal with /dev/shm issue on Travis builders
0809dd
Properly discover SO_NOSIGPIPE and MSG_SIGNAL
0809dd
IPC: fix call to QB_SUN_LEN
0809dd
list: don't splice empty lists onto the head.
0809dd
rpl_sem: make destroy more compliant
0809dd
test: fix unused-but-set-variable warning
0809dd
test: fix missing-format-attribute warning
0809dd
RB: make the "sem" abstraction into a notifier
0809dd
IPC: clean up the connection state checking
0809dd
Use dgram sockets for message oriented communications
0809dd
IPC: don't interpret EMSGSIZE and ENOMSG as a disconnect
0809dd
POLL: prevent a spin if the fd is not removed from the mainloop
0809dd
add TAGS and ~ files to .gitignore
0809dd
docs: install qb-blackbox.8 if doxygen is not available.
0809dd
IPC: seperate ipc_us.c into 2 files
0809dd
IPC: move utility functions to unix.c
0809dd
IPC: make sure we return a consistent error when the message is too big.
0809dd
0809dd
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.14.4-2
0809dd
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
0809dd
0809dd
* Thu Jan 17 2013 Angus Salkeld <asalkeld@redhat.com> - 0.14.4-1
0809dd
LOG: prevent the last char of the blackbox message from getting lost.
0809dd
Example: make the blackbox example more practical.
0809dd
Add the processing which remove notifier at skiplist_destroy function
0809dd
Add the processing which remove hash node and notifier at hashtable_destroy function
0809dd
Unify to QB_TRUE/QB_FALSE a boolean value
0809dd
Document the default prefix in INSTALL
0809dd
Unify the list processing with qb_list function
0809dd
Add travis link to the readme.
0809dd
Fix return code which is an error occurred at pthread function
0809dd
TEST: add a progam to compare the speed of vsnprintf and qb_vsnprintf_serialize
0809dd
LOG: add a test for a padded hex int.
0809dd
Fedora's splint has a strange syntax error, don't fail on it.
0809dd
LOG: fix truncation in some messages that get padded.
0809dd
Fix the blackbox formatter when specifing the string len/precision
0809dd
Fix strlcpy and strlcat functions
0809dd
IPC: don't over log on disconnect
0809dd
Make sure we don't use the format string whilst it is getting changed.
0809dd
ptrie: deref the current node in trie_iter_free()
0809dd
LOG: fix the format comparison to avoid generating multiple entries.
0809dd
LOG: set the return code when calloc fails
0809dd
IPC: call poll if we are mid message and get EAGAIN
0809dd
Remove extra ";"
0809dd
IPC: set the error more correctly when qb_sys_mmap_file_open() fails.
0809dd
Make sure that mmap'ed files smaller than a page size are written to.
0809dd
example/test: check for error in qb_ipc_run()
0809dd
example: check for error in qb_ipc_run()
0809dd
TEST: fix typo s/,/; in check_ipc.c
0809dd
0809dd
* Mon Oct 29 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.3-2
0809dd
Fix test code highlighted by new check version
0809dd
Remove the call to autogen.sh - not needed anymore.
0809dd
0809dd
* Mon Oct 29 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.3-1
0809dd
IPC: Pass the timeout to poll() if the recv function returns EAGAIN
0809dd
LOG: make the format comparison safe and sane
0809dd
LOG: don't break on empty callsites, just ignore them
0809dd
LOG: use the array callback to register new callsites
0809dd
array: add a mechanism to get a callback when a bin is allocated
0809dd
Solaris based operating systems don't define MSG_NOSIGNAL and SO_NOSIGPIPE.
0809dd
Make sure atomic's are initialized (for non-gcc atomic).
0809dd
0809dd
* Wed Sep 12 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.2-2
0809dd
Fix a crash in ptrie if you iterate over the map in the deleted notifier.
0809dd
0809dd
* Mon Sep 10 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.2-1
0809dd
Get libqb building on cygwin.
0809dd
ipc_us: slightly more robust cmsg handling
0809dd
ipc_us: on Linux, set SO_PASSCRED on the sending socket too
0809dd
ipc_us: clear request unused fields
0809dd
TEST: Include writing and reading the blackbox in the log_long_msg test
0809dd
LOG: fix qb_vsnprintf_deserialize()
0809dd
blackbox: fix 64-bit big-endian issues
0809dd
Remove IPC_NEEDS_RESPONSE_ACK and turn off shm ipc on solaris
0809dd
Define unix path max for openbsd
0809dd
Only turn on ipc_needs_response_ack=yes for solaris
0809dd
Some improvements to kqueue usage.
0809dd
kqueue: drop log message to trace.
0809dd
Fix splint warning
0809dd
openbsd requires netinet/in.h before arpa/inet.h
0809dd
Avoid strcpy() use strlcpy() instead.
0809dd
Fix kqueue complile warnings
0809dd
openbsd doesn't have EBADMSG
0809dd
openbsd has a different UNIX_PATH_MAX
0809dd
LOG: change qb_vsprintf_serialize() into qb_vsnprintf_serialize()
0809dd
TEST: increase timeout to 6 secs as the recv timeout is 5 secs
0809dd
TEST: get the logic right - grrr.
0809dd
Turn off attribute_section on netbsd
0809dd
Some missing pshared semaphore checks
0809dd
Cleanup the checks for pshared semaphores
0809dd
Add a config check for pthread_mutexattr_setpshared
0809dd
Remove uses of timersub and use qb_util_stopwatch
0809dd
RB: change the #error to ENOTSUP if no usable shared process sem
0809dd
LOOP-KQUEUE: fix reference before assignment.
0809dd
build: fix libqb.pc creation and make maintainer-clean
0809dd
LOG: Make sure the semaphores are initialized.
0809dd
build: remove bashism in cc support check
0809dd
Catch disconnected sockets on Solaris
0809dd
Don't free rb->shared_hdr in qb_rb_create_from_file()
0809dd
Check error return of qb_ipcs_uc_recv_and_auth()
0809dd
Fix removal of automatically installed doc files when building rpms
0809dd
Add the mailing list to the travis email notifications.
0809dd
Work around debian not setting the arch path in splint.
0809dd
Remove color-tests and parallel-tests automake options.
0809dd
Add travis continuous integration config
0809dd
LOG: Invoke custom log filter function if tag changes
0809dd
tests/rbwriter: don't ignore write failure
0809dd
ipcs: avoid use-after-free for size-0 || disconnect-request
0809dd
0809dd
* Wed Jul 18 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.1-1
0809dd
RB: set the new read pointer after clearing the header (#839605).
0809dd
RB: improve the debug print outs
0809dd
RB: be more explicit about the word alignment
0809dd
RB: cleanup the macros for wrapping the index
0809dd
RB: use sem_getvalue as a tie breaker when read_pt == write_pt
0809dd
RB: if read or peek don't get the message then re-post to the semaphore
0809dd
RB: convert the rb_peek() status into a recv like status.
0809dd
RB: use internal reclaim function
0809dd
IPC: use calloc instead of malloc to fix valgrind warnings
0809dd
Upgrade the doxygen config.
0809dd
Fix a valgrind error.
0809dd
0809dd
* Sun Jun 24 2012 Angus Salkeld <asalkeld@redhat.com> - 0.14.0-1
0809dd
LOG: fix threaded logging.
0809dd
Add user control of the permissions that are set on the shared mem files
0809dd
LOG: Restrict string trucation during serialization to when a precision is specified
0809dd
LOG: Gracefully fail when the caller exceeds QB_LOG_MAX_LEN
0809dd
LOG: Observe field widths when serializing string arguments
0809dd
RB: use the same mechanism in reclaim as read/peek to detect end-of-ring
0809dd
Add needs_response_ack option to ./check
0809dd
RB: fix wrong sem_flg IPC_NOWAIT option
0809dd
TESTS: fix warning about unused functions
0809dd
Remove D_FORTIFY_SOURCE from check.
0809dd
Open shared mem file in /dev/shm only for linux
0809dd
Don't use msg_flags on solaris (recvmsg).
0809dd
Turn off attribute_section on solaris
0809dd
ipc example: add -e (events) option
0809dd
IPC: if the server returns EAGAIN or ETIMEOUT the check the connection
0809dd
LOG: make it possible to fsync() on each file log.
0809dd
IPC: make sure that the created callback happens before dispatches
0809dd
LOG: fix the printing of %%p in the blackbox
0809dd
IPC: On bsd's use the notifier for responses
0809dd
IPC: interpret ECONNRESET and EPIPE as ENOTCONN
0809dd
cleanup some warnings
0809dd
config: use newer AC_COMPILE_IFELSE()
0809dd
blackbox: fix %%p formatting
0809dd
LOG: put all fields in the blackbox (added priority and tags)
0809dd
example: make the priority uint8_t
0809dd
Remove strerror out of check_funcs
0809dd
RB: fix compiler warning.
0809dd
Add replacement function stpcpy
0809dd
Add missing AC_TYPE_UINT16_T to configure.ac
0809dd
Use AC_FUNC_STRERROR_R and STRERROR_R_CHAR_P
0809dd
Add stpcpy strcasecmp to the check_funcs
0809dd
Move some conditional defines into code (from the configure script)
0809dd
Remove some unused configure checks
0809dd
Remove message queues
0809dd
Check for union semun properly
0809dd
Blackbox: provide more space for log messages when reading from the blackbox.
0809dd
Add the blackbox reader manpage to the spec file
0809dd
Enable error logging for the blackbox reader
0809dd
RB: Read the file size into an initialized variable of the correct size
0809dd
Add a tool to dump the blackbox.
0809dd
RB: to be safer save the read and write pointers at the top of the blackbox
0809dd
avoid unwarranted use of strncpy: use memcpy instead
0809dd
blackbox: fix the print_from_file()
0809dd
RB: add an option to not use any semaphores
0809dd
LOG: tweak the blackbox format string
0809dd
LOG: accept NULL strings into the blackbox
0809dd
LOG: protect close and reload from calling log
0809dd
Add benchmark option (-b) to examples/ipcclient
0809dd
TEST: make rbreader/writer more like the other benchmarking apps
0809dd
IPC: log the connection description in all logs
0809dd
TEST: re-organise the ipc test suites
0809dd
IPC: only modify the dispatch if we get EAGAIN
0809dd
Correctly display timestamp in blackbox
0809dd
0809dd
* Thu May 10 2012 Angus Salkeld <asalkeld@redhat.com> - 0.13.0-1
0809dd
- Remove unneccessary __attribute__ ((aligned(8))) from internal headers
0809dd
- IPC: add a new function to get (and alloc) the extended stats.
0809dd
- Revert "Add the event queue length to the connection stats."
0809dd
- IPC: cleanup better on a failed client connect.
0809dd
- IPC(soc): be more consistent with control struct size
0809dd
- IPC: kill a compiler warning
0809dd
- IPC(soc): pass in the correct size into munmap()
0809dd
- TEST: Use /bin/sh not /bin/bash
0809dd
- TEST: check for lost shared mem on bsd too
0809dd
- rb: cleanup the semaphores
0809dd
- Fix some small issues in ./check
0809dd
- Cleanup the .gitignore files
0809dd
- configure.ac tweaks
0809dd
- Remove HZ and use sysconf instead.
0809dd
- SUN_LEN() macro is present if __EXTENSIONS__ is defined on Illumos
0809dd
- PF_UNIX is a POSIX standard name
0809dd
- Test for log facility names
0809dd
- IPC: drop log message to debug.
0809dd
- IPC: fix retrying of partial recv's and sends.
0809dd
- IPC: initialize enough shared mem for all 3 one way connections.
0809dd
- IPC: keep retrying to recv the socket message if partially recv'ed (part 2)
0809dd
- IPC: keep retrying to recv the socket message if partially recv'ed
0809dd
- IPC: handle the server shutdown better
0809dd
- IPC: handle a connection disconnect from the server better
0809dd
- IPC: make it possible to send events in the connected callback.
0809dd
- Add the event queue length to the connection stats.
0809dd
- IPC: add a is_connected client side function.
0809dd
- Fix typo in ./check
0809dd
- docs: clarify the need to use request/response headers
0809dd
- Remove unused local variable
0809dd
- IPC: change the socket recv function to read the response header.
0809dd
- Add some special commands into the ipc example
0809dd
- TEST: improve the tracing in the ipc tests.
0809dd
- Make "make (s)rpm" work more reliably
0809dd
- TEST: add a test to confirm we get the events we send.
0809dd
- TEST: reuse send_and_check for events.
0809dd
- IPC: make it possible for a root client to talk to a non-root server.
0809dd
- Run ./Lindent in the examples directory
0809dd
- Add some debug code to the ipcclient example
0809dd
- IPC: make sure ipc (socket) clients can connect to a server running as root.
0809dd
- IPC: allow qb to bump the max_message_size
0809dd
- IPC: check for a sane minimum max_message_size
0809dd
- add rpl_sem.h loop_poll_int.h to noinst_headers
0809dd
- Handle errors more consistently
0809dd
- call recv_ready on socket types
0809dd
- Handle a recv of size 0
0809dd
- make bsd shm path better by default.
0809dd
- Fix kqueue on freebsd.
0809dd
- Get the example socket includes right.
0809dd
- Fix kqueue compiling.
0809dd
- POLL: seperate out the poll/epoll and add kqueue
0809dd
- Test existence of getpeer* functions
0809dd
- Add inet header to tcpclient example
0809dd
- Don't link with setpshared if unavailable
0809dd
- NetBSD doesn't have semun defined
0809dd
- Use MADV_NOSYNC only on systems where available
0809dd
- Use SCHED_BATCH only on platforms where available
0809dd
- Fix a bug introduced by the bsd patch.
0809dd
- Cleanup the selection of semaphores to use
0809dd
- Fix some leaks in the logging.
0809dd
- Try and improve the portability on bsd variants.
0809dd
0809dd
* Sun Mar 11 2012  Angus Salkeld <asalkeld@redhat.com> - 0.11.1-1
0809dd
- configue libqb to not use epoll as it seems broken (#800865)
0809dd
- LOOP: remove some old timerfd code.
0809dd
- TEST: add a test to check the order of the jobs
0809dd
- LOOP: when new jobs are added they are added to the head instead of the tail.
0809dd
- LOG: Now the array is self locking we can make the lookup array dynamic
0809dd
- Add locking to the array when growing.
0809dd
- IPC: make the _request_q_len_get() function more obvious.
0809dd
- IPC: fix multiple receives from qb_ipc_us_recv()
0809dd
- IPC: make sure that the wrong union member is not written to.
0809dd
- TIMER: check for null timer handle
0809dd
0809dd
Wed Mar 7 2012  Angus Salkeld <asalkeld@redhat.com> - 0.11.0-1
0809dd
- ARRAY: cleanup the pointer sizeof()
0809dd
- LOG: turn off __attribute__(section) for powerpc (not working)
0809dd
- TESTS: move the util tests into "slow-tests" (i.e. optional)
0809dd
- TEST: make the test_priority the same type as in the callsite
0809dd
- LOG: make the log arrays manually grow-able since we need to lock the calls.
0809dd
- RB: fix test failure on ppc
0809dd
- RB: change the name of the size to word_size to be more clear
0809dd
- TEST: add some more signal tests.
0809dd
- LOOP: fix deletion of signal handlers when they are pending
0809dd
- LOOP: signal handlers were always added as high priority.
0809dd
- TEST: deal with mac's limited sed
0809dd
- check: add debugging to the configure options and remove unused options
0809dd
- TEST: properly clear the filters
0809dd
- LOG: expose the mechanism to get a dynamic callsite.
0809dd
- Revert part of my COARSE grained timer commit
0809dd
- Remove timerfd usage and go back to timelist.
0809dd
- UTIL: if possible use COARSE resolution clocks - they are much faster.
0809dd
- ARRAY: save memory (in the bins array) and allow holes in the array
0809dd
- LOOP: add qb_loop_timer_is_running()
0809dd
- LOOP: allow stop() and run() to be called with NULL loop instance.
0809dd
- LOOP: fix doxygen parameter comment
0809dd
- LOG: add stdout target
0809dd
- LOOP: add a function to delete jobs
0809dd
- LOG: remove debug printf's
0809dd
- LOG: remove an old/incorrect doxygen comment.
0809dd
- LOG: add a hostname %%H format specifier.
0809dd
- LOG: Add qb_log_filter_fn_set()
0809dd
0809dd
* Tue Feb 14 2012 Angus Salkeld <asalkeld@redhat.com> - 0.10.1-1
0809dd
- Fix "make distcheck" add include path to AM_CPPFLAGS
0809dd
- Bump the version to 0.10.1
0809dd
- clang: Remove unused code
0809dd
- TEST: make the ipc failure test closer to corosync's case.
0809dd
- RB: add a debug message if trying to read a message of the wrong size
0809dd
- IPC: split up the recv into chuncks of 2 seconds. (#788742)
0809dd
- Be more consistent with the internal logs.
0809dd
- LOOP: make it possible to pass in NULL as the default loop instance
0809dd
- RB: use the proper struct not the typedef in the implementation.
0809dd
- RB: Fix potential mem leak
0809dd
- Don't mix enums (QB_TRUE/TRUE)
0809dd
- use random() not rand()
0809dd
- Remove dead code
0809dd
- set umask before calling mkstemp()
0809dd
- Use safer versions of string functions (strcpy -> strlcpy)
0809dd
- Increase the coverity aggressiveness
0809dd
- TEST: make the loop ratelimit test more forgiving.
0809dd
0809dd
* Tue Feb 07 2012 Angus Salkeld <asalkeld@redhat.com> - 0.10.0-1
0809dd
- LOOP: handle errors from the poll function
0809dd
- LOOP: make the item type applicable to jobs too.
0809dd
- LOOP: fix the todo calculations.
0809dd
- TEST: check for a single job causing a cpu spin
0809dd
- LOOP: prevent jobs from consuming too much cpu.
0809dd
- Get coverity to ignore this warning.
0809dd
- Change example code to use fgets instead of gets
0809dd
- LOG: pass the result of qb_log_thread_start() back to the user
0809dd
- Fix some issues found by clang
0809dd
- Add clang-analyzer check
0809dd
- Add a split timer to the stopwatch.
0809dd
- IPC: merge common code into new function
0809dd
- IPC: better handle a disconnect been called from within connection_created()
0809dd
- IPC: fix scary typo
0809dd
- IPC: fix server error handling
0809dd
0809dd
* Mon Feb 06 2012 Angus Salkeld <asalkeld@redhat.com> - 0.9.0-2
0809dd
- Fix a spin in the mainloop when a timer or poll gets removed
0809dd
  When in the job queue (#787196).
0809dd
0809dd
* Fri Jan 27 2012  Angus Salkeld <asalkeld@redhat.com> - 0.9.0-1
0809dd
- Rebased to 0.9.0
0809dd
0809dd
* Tue Jan 10 2012  Angus Salkeld <asalkeld@redhat.com> - 0.8.1-2
0809dd
- fix qb_timespec_add_ms()
0809dd
0809dd
* Thu Jan 5 2012  Angus Salkeld <asalkeld@redhat.com> - 0.8.1-1
0809dd
- Rebased to 0.8.1 (#771914)
0809dd
0809dd
* Thu Nov 17 2011 Angus Salkeld <asalkeld@redhat.com> - 0.7.0-1
0809dd
- Rebased to 0.7.0 (#754610)
0809dd
0809dd
* Thu Sep 1 2011 Angus Salkeld <asalkeld@redhat.com> - 0.6.0-2
0809dd
- LOG: fix the default syslog filter
0809dd
0809dd
* Tue Aug 30 2011 Angus Salkeld <asalkeld@redhat.com> - 0.6.0-1
0809dd
- Rebased to 0.6.0 which includes (#734457):
0809dd
- Add a stop watch
0809dd
- LOG: serialize the va_list, don't snprintf
0809dd
- LOG: change active list into array access
0809dd
- atomic: fix qb_atomic_pointer macros
0809dd
- LOG: allow the thread priority to be set.
0809dd
- Fix splint warning on ubuntu 11.04
0809dd
0809dd
* Mon Jul 18 2011 Angus Salkeld <asalkeld@redhat.com> - 0.5.1-1
0809dd
- Rebased to 0.5.1 which includes:
0809dd
- LOOP: make the return more consistent in qb_loop_timer_expire_time_get()
0809dd
- LOG: add string.h to qblog.h
0809dd
- Add a qb_strerror_r wrapper.
0809dd
- don't let an invalid time stamp provoke a NULL dereference
0809dd
- LOG: move priority check up to prevent unnecessary format.
0809dd
- rename README to README.markdown
0809dd
0809dd
* Wed Jun 8 2011 Angus Salkeld <asalkeld@redhat.com> - 0.5.0-1
0809dd
- Rebased to 0.5.0 which includes:
0809dd
- new logging API
0809dd
- support for sparc
0809dd
- coverity fixes
0809dd
0809dd
* Tue Feb 8 2011 Angus Salkeld <asalkeld@redhat.com> - 0.4.1-2
0809dd
- SPEC: improve devel files section
0809dd
- SPEC: remove global variables
0809dd
0809dd
* Mon Jan 31 2011 Angus Salkeld <asalkeld@redhat.com> - 0.4.1-1
0809dd
- SPEC: add procps to BuildRequire
0809dd
- SPEC: remove automake and autoconf from BuildRequire
0809dd
- SPEC: remove call to ./autogen.sh
0809dd
- SPEC: update to new upstream version 0.4.1
0809dd
- LOOP: check read() return value
0809dd
- DOCS: add missing @param on new timeout argument
0809dd
- BUILD: only set -g and -O options if explicitly requested.
0809dd
- BUILD: Remove unneccessary check for library "dl"
0809dd
- BUILD: improve the release build system
0809dd
0809dd
* Fri Jan 14 2011 Angus Salkeld <asalkeld@redhat.com> - 0.4.0-2
0809dd
- remove "." from Summary
0809dd
- Add "check-devel to BuildRequires
0809dd
- Add "make check" to check section
0809dd
- Changed a buildroot to RPM_BUILD_ROOT
0809dd
- Document alphatag, numcomm and dirty variables.
0809dd
0809dd
* Sun Jan 09 2011 Angus Salkeld <asalkeld@redhat.com> - 0.4.0-1
0809dd
- Initial release