In handle_new_connection(), connection_accept() could fail, which would
leave the state of the connection inactive. Previously, in this case,
the socket and the allocated qb_ipcs_connection would be leaked.
Some platforms (eg. FreeBSD 10+) don't support calling dlopen() from
within a dl_iterate_phdr() callback; so save all of the dlpi_names to
a list and iterate over them afterwards.
This fixes a deadlock which occurs in dlopen() when called from
within dl_iterate_phdr() on FreeBSD 10+ when linked to libthr.
Patch from dpejesh on github.
Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
On *BSD and other platforms the stress_connections can timeout and
fail the tests. I've increased the timeout here to an hour as it
takes nearly that long on my VM environment but it seems that's not
common, luckily.
This was also seen on mips/mipsel.
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Only one of the strndup calls should have subtracted 9 from
the name length. The other should have remained at 8.
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
The current code closes the fd before passing it to the
provided delete function. In the default case this can generate
"epoll_ctl(del): Bad file descriptor" messages when debug logging
is enabled.
This patch swaps over the calls so that a valid FD is passed to
the delete function.
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Reviewed-By: Ken Gaillot <kgaillot@redhat.com>
The code removed the last 8 characters of a socket name
to get the 'base name', but 9 are needed.
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
* Import new Upstream release tarball for version 0.17.2.
* Bump version to 0.17.2.real-1.
* Update watch file to track the proper release tarballs. Also add
dversionmangle to find upstream tarballs for "real" versions.
Upstream version 0.17.2.real.
The former tarball doesn't contain the files needed to build a proper libqb
version. Fix that by importing the release tarball.
Update debian/watch file to track the official release tarballs. Those tarballs
include .tarball-version. If we use tarballs generated by github, pkg-version
will not work correctly (version UNKNOWN).
Signed-off-by: Adrian Vondendriesch <adrian.vondendriesch@credativ.de>
All changes provided within the patch are already upstream. We need to remove
this patch within the next upstream release.
Signed-off-by: Adrian Vondendriesch <adrian.vondendriesch@credativ.de>
On some platforms the check_ipc test can fail due to SIGTERM
being delivered to to exiting server process. There is a race
condition between the server main loop quitting and the
signal being delivered.
This patch closes that race loophole in two places, firstly
it makes SIGTERM/SIGSTOP exit immediately rather than just signalling
the mainloop, secondly it calls exit() rather than return when the server
mainloop completes to that the client code does not start executing!
Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
If build-aux/generate-docs is run from the top level of the checkout,
it will prompt for the old and new version numbers, and generate
doxygen, ABI compatibility and change log documentation,
and commit them to the gh-pages branch.
- update location of HTML output
- don't exit if there were incompatible ABI changes
- don't need branch name variable since we're not creating new branch for build anymore
This revision switches libtool soname versioning from -version-number to
-version-info, and updates the travis configuration to use their newly
recommended infrastructure.
When both the corosync and pacemaker has PID larger or equal 10000
and when the file descriptor is larger or equal 10 the desciption
will have at least 17 characters.
We need to add psmisc to autopkgtest dependencies, otherwise `killall` will not
be available.
Signed-off-by: Adrian Vondendriesch <adrian.vondendriesch@credativ.de>