summaryrefslogtreecommitdiff
path: root/source3/lib/util_unistr.c
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2008-08-05 22:38:44 +0200
committerMichael Adam <obnox@samba.org>2008-08-05 23:43:53 +0200
commitb59ed9c05f5d5831e6abf5db6f58a75ec98902f8 (patch)
tree3d1b2193b336c443072a87785b08317483ec3f84 /source3/lib/util_unistr.c
parent6e16022d625217bccc273f647c34f55030f78334 (diff)
downloadsamba-b59ed9c05f5d5831e6abf5db6f58a75ec98902f8.tar.gz
samba-b59ed9c05f5d5831e6abf5db6f58a75ec98902f8.tar.bz2
samba-b59ed9c05f5d5831e6abf5db6f58a75ec98902f8.zip
idmap_tdb2: fix a race condition in idmap_tdb2_allocate_id().
The race is a regression introduced by the change to dbwrap. It might have led to two concurrent processes returning the same id. This fix is achieved by changing dbwrap_change_uint32_atomic() to match the original behaviour of tdb_change_uint32_atomic(), which is the following: *oldval is used as initial value when the value does not yet exist and that the old value should be returned in *oldval. dbwrap_change_uint32_atomic() is used (only) in idmap_tdb2.c, to get new ids. Michael (This used to be commit 72bd83fea7572a6202027b200d192c05023aa633)
Diffstat (limited to 'source3/lib/util_unistr.c')
0 files changed, 0 insertions, 0 deletions