]> git.sur5r.net Git - openldap/commit
Preliminary Fixes for ITS#24, ITS#26, and ldbm_back_add race condition.
authorKurt Zeilenga <kurt@openldap.org>
Wed, 30 Dec 1998 03:35:23 +0000 (03:35 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Wed, 30 Dec 1998 03:35:23 +0000 (03:35 +0000)
commit64cd7d3346b26ea840bfd328b11e1faae6922116
tree9c2a39d755ebdd05b728d14ddd2cc878044986e0
parent595bf86635fabc054cca0e2da70129bec777cfaf
Preliminary Fixes for ITS#24, ITS#26, and ldbm_back_add race condition.
Resolved deadlock by passing target entry to be_group and using
this if dn same as bdn.  It might actually be safer to check
entry ids instead of dns.
Resolved bogus add to cache after failed acl check by deferring
cache add until after parent/acl checks have successful been
completed.
Eliminated race condition caused by concurrent adds
of same dn by adding 'li_add_mutex' around the critical section
of code (most of ldbm_back_add).
This code is preliminary and still needs significant testing.
servers/slapd/acl.c
servers/slapd/back-ldbm/add.c
servers/slapd/back-ldbm/back-ldbm.h
servers/slapd/back-ldbm/group.c
servers/slapd/back-ldbm/init.c
servers/slapd/backend.c
servers/slapd/proto-slap.h
servers/slapd/slap.h