1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
samba-mirror/lib
Ralph Boehme a7a77e2f43 tdb: avoid a race condition when checking for robust mutexes
This fixes a race between calling waitpid() in two places (SIGCHLD the
signal handler and the rendezvous code when waiting for the child to
terminate), by

- blocking SIGCHLD before installing our signal handler

- in the rendezvous code call sigssuspend() which unblocks SIGCHLD and
  suspends the thread and waits for signal delivery

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11808

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Uri Simchoni <uri@samba.org>

Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Tue Mar 29 16:04:19 CEST 2016 on sn-devel-144
2016-03-29 16:04:19 +02:00
..
addns lib: Fix CID 1273234 Untrusted value as argument 2015-06-23 22:12:08 +02:00
afs waf: add --with-fake-kaserver option 2014-06-04 20:09:38 +02:00
async_req lib/async_req: do not install async_connect_send_test. 2015-12-01 17:41:19 +01:00
compression lib/compression/tests: add missing #include "torture/local/proto.h" 2014-04-02 09:03:44 +02:00
crypto vfs: Remove smb_traffic_analyzer 2015-11-11 00:23:35 +01:00
dbwrap lib: Avoid "includes.h" in dbwrap.c 2016-03-06 16:21:12 +01:00
krb5_wrap lib: Fix CID 1356315 Dereference before null check 2016-03-18 00:29:14 +01:00
ldb ldb_controls: avoid unnecessary unchecked talloc_asprintf()s 2016-03-22 08:00:32 +01:00
ldb-samba ldb-samba:wscript: python_samba__ldb depends on pyauth 2016-03-16 01:34:29 +01:00
nss_wrapper lib: Update nss_wrapper to version 1.1.3 2016-03-22 00:23:20 +01:00
param loadparm: introduce lp_parm_ulonglong() and lpcfg_parm_ulonglong() 2016-01-26 15:58:11 +01:00
replace libreplace: use HAVE___ATTRIBUTE__ instead of __GNUC__ 2016-03-24 15:13:15 +01:00
resolv_wrapper build: Build *_wrapper without -DNDEBUG for in-tree use 2015-10-16 16:36:22 +02:00
smbconf lib/smbconf: remove const warning 2014-11-14 23:27:05 +01:00
socket lib/socket/interfaces: Fix some uninitialied bytes. 2016-03-12 06:24:24 +01:00
socket_wrapper lib: Update socket_wrapper to version 1.1.6 2016-03-22 00:23:20 +01:00
talloc pytalloc: Correct description of pytalloc_Get{Base,}ObjectType behaviour 2016-03-08 05:14:15 +01:00
tdb tdb: avoid a race condition when checking for robust mutexes 2016-03-29 16:04:19 +02:00
tdb_wrap tdb_wrap: Use a struct initializer 2015-07-23 14:39:18 +02:00
tdr lib: Fix 1354521 Unchecked return value 2016-03-01 21:49:44 +01:00
tevent tevent.h: use HAVE___ATTRIBUTE__ instead of __GNUC__ 2016-03-24 15:13:15 +01:00
texpect texpect: undefined symbol rep_fprintf 2015-10-22 14:28:17 +02:00
torture lib/torture: add torture_assert_u64_not_equal_goto macro 2016-03-22 00:23:21 +01:00
tsocket lib/tsocket: workaround sockets not supporting FIONREAD 2016-02-10 10:30:23 +01:00
uid_wrapper lib: Update uid_wrapper to version 1.2.1 2016-03-22 00:23:20 +01:00
util lib/util: fix function comment 2016-03-28 20:45:16 +02:00
README subunit: Update to newer upstream version. 2010-03-29 18:05:29 +02:00
wscript_build Remove 'external' python module support code - use the third_party directory instead. 2015-03-06 04:41:48 +01:00

compression - Various compression algorithms (MSZIP, lzxpress)
dnspython - Python module for working with DNS.
nss_wrapper - Wrapper for the user and group NSS API allowing the use 
              of other data sources.
popt - Command-line option parsing library
replace - Provides replacements for standard (POSIX, C99) functions 
          not provided by the host platform.
socket_wrapper - Wrapper library allowing TCP/IP traffic to be redirected 
                 over Unix domain sockets.
subunit - Utilities and bindings for working with the Subunit test result 
          reporting protocol.
talloc - Hierarchical pool based memory allocator 
tdb - Simple but fast key/value database library, supporting multiple writers
torture - Simple unit testing helper library