Branch: refs/heads/master Home: https://github.com/ClusterLabs/libqb Commit: 95e48fdb761ee88d4aa722fc14cb3bc51c213296 https://github.com/ClusterLabs/libqb/commit/95e48fdb761ee88d4aa722fc14cb3bc5... Author: David Vossel dvossel@redhat.com Date: 2013-07-01 (Mon, 01 Jul 2013)
Changed paths: M lib/ipc_socket.c M lib/ipcs.c
Log Message: ----------- Fix: ipcs: Properly disconnect client connection on POLLNVAL or any other error causing connection removal from mainloop.
qb_ipcs_dispatch_connection_request is a callback function registered with mainloop, or whatever other looping thread implementation is in use. When this callback is registered, a reference of the connection object is given to the mainloop thread. If this callback ever returns something none zero the callback (and corresponding fd) is unregistered from the loop automatically, so we must decrement the reference in this instance.
Since unregistering this callback from mainloop guarantees a disconnect simply because requests on the fd are no longer processed, it is best that we completely disconnect the connection (which will handle the unref) when this callback returns an error... Otherwise since the fd is unregistered from the mainloop thread, it may not be possible to detect a disconnect in the future.
Commit: ff180f7a55263d3582f1c06b46b918d5b292da82 https://github.com/ClusterLabs/libqb/commit/ff180f7a55263d3582f1c06b46b918d5... Author: David Vossel dvossel@redhat.com Date: 2013-07-01 (Mon, 01 Jul 2013)
Changed paths: M lib/ipc_setup.c M lib/ipcc.c M lib/ipcs.c
Log Message: ----------- Fix: ipcs: Disconnect shm ipc connection when poll socket returns error on msg receive
Commit: 6d1a9838b4199dab959b5550d5ec353706335498 https://github.com/ClusterLabs/libqb/commit/6d1a9838b4199dab959b5550d5ec3537... Author: David Vossel dvossel@redhat.com Date: 2013-07-02 (Tue, 02 Jul 2013)
Changed paths: M lib/ipc_setup.c M lib/ipc_socket.c M lib/ipcc.c M lib/ipcs.c
Log Message: ----------- Merge pull request #74 from davidvossel/ref_count_cleanup
Properly disconnect clients when ipc dispatch fails.
Compare: https://github.com/ClusterLabs/libqb/compare/7c6e109046ec...6d1a9838b419
quarterback-devel@lists.fedorahosted.org