summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs-xml/manpages-3/idmap_ldap.8.xml10
-rw-r--r--docs-xml/manpages-3/idmap_tdb.8.xml14
-rw-r--r--docs-xml/manpages-3/idmap_tdb2.8.xml11
-rw-r--r--source4/dsdb/common/util.c2
-rw-r--r--source4/lib/ldb/common/ldb.c13
-rw-r--r--source4/lib/ldb/config.mk20
-rw-r--r--source4/lib/ldb/include/ldb_includes.h4
-rw-r--r--source4/lib/ldb/ldb_ildap/ldb_ildap.c12
-rw-r--r--source4/lib/ldb/ldb_tdb/ldb_tdb.c4
-rw-r--r--source4/lib/ldb/pyldb.c2
-rw-r--r--source4/lib/ldb/python.mk10
11 files changed, 61 insertions, 41 deletions
diff --git a/docs-xml/manpages-3/idmap_ldap.8.xml b/docs-xml/manpages-3/idmap_ldap.8.xml
index ea9e5bf07e..0c8fa3c3eb 100644
--- a/docs-xml/manpages-3/idmap_ldap.8.xml
+++ b/docs-xml/manpages-3/idmap_ldap.8.xml
@@ -22,9 +22,15 @@
<para>The idmap_ldap plugin provides a means for Winbind to
store and retrieve SID/uid/gid mapping tables in an LDAP directory
service.
+ </para>
+
+ <para>
In contrast to read only backends like idmap_rid, it is an allocating
- backend: This means that it needs to allocate new user and group IDs to
- create new mappings as requests to yet unmapped users are answered.
+ backend: This means that it needs to allocate new user and group IDs in
+ order to create new mappings. The allocator can be provided by the
+ idmap_ldap backend itself or by any other allocating backend like
+ idmap_tdb or idmap_tdb2. This is configured with the
+ parameter <parameter>idmap alloc backend</parameter>.
</para>
<para>
diff --git a/docs-xml/manpages-3/idmap_tdb.8.xml b/docs-xml/manpages-3/idmap_tdb.8.xml
index fb23076d08..2b4c050966 100644
--- a/docs-xml/manpages-3/idmap_tdb.8.xml
+++ b/docs-xml/manpages-3/idmap_tdb.8.xml
@@ -21,10 +21,16 @@
<para>
The idmap_tdb plugin is the default backend used by winbindd
- for storing SID/uid/gid mapping tables. In contrast to read only
- backends like idmap_rid, it is an allocating backend:
- This means that it needs to allocate new user and group IDs
- to create new mappings as requests to yet unmapped users are answered.
+ for storing SID/uid/gid mapping tables.
+ </para>
+
+ <para>
+ In contrast to read only backends like idmap_rid, it is an allocating
+ backend: This means that it needs to allocate new user and group IDs in
+ order to create new mappings. The allocator can be provided by the
+ idmap_tdb backend itself or by any other allocating backend like
+ idmap_ldap or idmap_tdb2. This is configured with the
+ parameter <parameter>idmap alloc backend</parameter>.
</para>
<para>
diff --git a/docs-xml/manpages-3/idmap_tdb2.8.xml b/docs-xml/manpages-3/idmap_tdb2.8.xml
index 6b303b4822..4f19ba103a 100644
--- a/docs-xml/manpages-3/idmap_tdb2.8.xml
+++ b/docs-xml/manpages-3/idmap_tdb2.8.xml
@@ -26,10 +26,12 @@
</para>
<para>
- In contrast to read only
- backends like idmap_rid, it is an allocating backend:
- This means that it needs to allocate new user and group IDs
- to create new mappings as requests to yet unmapped users are answered.
+ In contrast to read only backends like idmap_rid, it is an allocating
+ backend: This means that it needs to allocate new user and group IDs in
+ order to create new mappings. The allocator can be provided by the
+ idmap_tdb2 backend itself or by any other allocating backend like
+ idmap_tdb or idmap_ldap. This is configured with the
+ parameter <parameter>idmap alloc backend</parameter>.
</para>
<para>
@@ -111,7 +113,6 @@
<programlisting>
[global]
- # "idmap backend = tdb2" is redundant here since it is the default
idmap backend = tdb2
idmap uid = 1000000-2000000
idmap gid = 1000000-2000000
diff --git a/source4/dsdb/common/util.c b/source4/dsdb/common/util.c
index 2161286e08..b02a162293 100644
--- a/source4/dsdb/common/util.c
+++ b/source4/dsdb/common/util.c
@@ -22,7 +22,7 @@
*/
#include "includes.h"
-#include "events.h"
+#include "events/events.h"
#include "ldb.h"
#include "ldb_errors.h"
#include "../lib/util/util_ldb.h"
diff --git a/source4/lib/ldb/common/ldb.c b/source4/lib/ldb/common/ldb.c
index 4443362448..fe55d1499a 100644
--- a/source4/lib/ldb/common/ldb.c
+++ b/source4/lib/ldb/common/ldb.c
@@ -48,7 +48,7 @@ struct ldb_context *ldb_init(TALLOC_CTX *mem_ctx, struct tevent_context *ev_ctx)
/* FIXME: Hack a new event context so that CMD line utilities work
* until we have them all converted */
if (ev_ctx == NULL) {
- ev_ctx = event_context_init(talloc_autofree_context());
+ ev_ctx = tevent_context_init(talloc_autofree_context());
}
ret = ldb_setup_wellknown_attributes(ldb);
@@ -394,6 +394,7 @@ static int ldb_autotransaction_request(struct ldb_context *ldb,
int ldb_wait(struct ldb_handle *handle, enum ldb_wait_type type)
{
struct tevent_context *ev;
+ int ret;
if (!handle) {
return LDB_ERR_UNAVAILABLE;
@@ -410,7 +411,10 @@ int ldb_wait(struct ldb_handle *handle, enum ldb_wait_type type)
switch (type) {
case LDB_WAIT_NONE:
- event_loop_once(ev);
+ ret = tevent_loop_once(ev);
+ if (ret != 0) {
+ return LDB_ERR_OPERATIONS_ERROR;
+ }
if (handle->state == LDB_ASYNC_DONE ||
handle->status != LDB_SUCCESS) {
return handle->status;
@@ -419,7 +423,10 @@ int ldb_wait(struct ldb_handle *handle, enum ldb_wait_type type)
case LDB_WAIT_ALL:
while (handle->state != LDB_ASYNC_DONE) {
- event_loop_once(ev);
+ ret = tevent_loop_once(ev);
+ if (ret != 0) {
+ return LDB_ERR_OPERATIONS_ERROR;
+ }
if (handle->status != LDB_SUCCESS) {
return handle->status;
}
diff --git a/source4/lib/ldb/config.mk b/source4/lib/ldb/config.mk
index fe3b71d1d5..6fcf3943d0 100644
--- a/source4/lib/ldb/config.mk
+++ b/source4/lib/ldb/config.mk
@@ -1,7 +1,7 @@
################################################
# Start MODULE ldb_asq
[MODULE::ldb_asq]
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
CFLAGS = -I$(ldbsrcdir)/include
INIT_FUNCTION = LDB_MODULE(asq)
SUBSYSTEM = LIBLDB
@@ -13,7 +13,7 @@ ldb_asq_OBJ_FILES = $(ldbsrcdir)/modules/asq.o
################################################
# Start MODULE ldb_server_sort
[MODULE::ldb_server_sort]
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
CFLAGS = -I$(ldbsrcdir)/include
INIT_FUNCTION = LDB_MODULE(server_sort)
SUBSYSTEM = LIBLDB
@@ -27,7 +27,7 @@ ldb_server_sort_OBJ_FILES = $(ldbsrcdir)/modules/sort.o
[MODULE::ldb_paged_results]
INIT_FUNCTION = LDB_MODULE(paged_results)
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
SUBSYSTEM = LIBLDB
# End MODULE ldb_paged_results
################################################
@@ -39,7 +39,7 @@ ldb_paged_results_OBJ_FILES = $(ldbsrcdir)/modules/paged_results.o
[MODULE::ldb_paged_searches]
INIT_FUNCTION = LDB_MODULE(paged_searches)
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
SUBSYSTEM = LIBLDB
# End MODULE ldb_paged_results
################################################
@@ -51,7 +51,7 @@ ldb_paged_searches_OBJ_FILES = $(ldbsrcdir)/modules/paged_searches.o
[MODULE::ldb_operational]
SUBSYSTEM = LIBLDB
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
INIT_FUNCTION = LDB_MODULE(operational)
# End MODULE ldb_operational
################################################
@@ -63,7 +63,7 @@ ldb_operational_OBJ_FILES = $(ldbsrcdir)/modules/operational.o
[MODULE::ldb_rdn_name]
SUBSYSTEM = LIBLDB
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
INIT_FUNCTION = LDB_MODULE(rdn_name)
# End MODULE ldb_rdn_name
################################################
@@ -79,7 +79,7 @@ $(ldb_map_OBJ_FILES): CFLAGS+=-I$(ldbsrcdir)/ldb_map
[MODULE::ldb_skel]
SUBSYSTEM = LIBLDB
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC LIBTEVENT
INIT_FUNCTION = LDB_MODULE(skel)
# End MODULE ldb_skel
################################################
@@ -91,7 +91,7 @@ ldb_skel_OBJ_FILES = $(ldbsrcdir)/modules/skel.o
[MODULE::ldb_sqlite3]
SUBSYSTEM = LIBLDB
CFLAGS = -I$(ldbsrcdir)/include
-PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBEVENTS
+PRIVATE_DEPENDENCIES = LIBTALLOC SQLITE3 LIBTEVENT
INIT_FUNCTION = LDB_BACKEND(sqlite3)
# End MODULE ldb_sqlite3
################################################
@@ -104,7 +104,7 @@ ldb_sqlite3_OBJ_FILES = $(ldbsrcdir)/ldb_sqlite3/ldb_sqlite3.o
SUBSYSTEM = LIBLDB
CFLAGS = -I$(ldbsrcdir)/include -I$(ldbsrcdir)/ldb_tdb
PRIVATE_DEPENDENCIES = \
- LIBTDB LIBTALLOC LIBEVENTS
+ LIBTDB LIBTALLOC LIBTEVENT
INIT_FUNCTION = LDB_BACKEND(tdb)
# End MODULE ldb_tdb
################################################
@@ -117,7 +117,7 @@ ldb_tdb_OBJ_FILES = $(addprefix $(ldbsrcdir)/ldb_tdb/, ldb_tdb.o ldb_search.o ld
[LIBRARY::LIBLDB]
CFLAGS = -I$(ldbsrcdir)/include
PUBLIC_DEPENDENCIES = \
- LIBTALLOC LIBEVENTS
+ LIBTALLOC LIBTEVENT
PRIVATE_DEPENDENCIES = \
SOCKET_WRAPPER
diff --git a/source4/lib/ldb/include/ldb_includes.h b/source4/lib/ldb/include/ldb_includes.h
index 29c7b2dc5a..8356404409 100644
--- a/source4/lib/ldb/include/ldb_includes.h
+++ b/source4/lib/ldb/include/ldb_includes.h
@@ -19,8 +19,8 @@
#include "replace.h"
#include "system/filesys.h"
#include "system/time.h"
-#include "talloc.h"
-#include "events.h"
+#include <talloc.h>
+#include <tevent.h>
#include "ldb.h"
#include "ldb_errors.h"
#include "ldb_private.h"
diff --git a/source4/lib/ldb/ldb_ildap/ldb_ildap.c b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
index 9e31bc62bb..791cc75dc1 100644
--- a/source4/lib/ldb/ldb_ildap/ldb_ildap.c
+++ b/source4/lib/ldb/ldb_ildap/ldb_ildap.c
@@ -389,9 +389,9 @@ static int ildb_request_send(struct ildb_context *ac, struct ldap_message *msg)
talloc_free(req->time_event);
req->time_event = NULL;
if (ac->req->timeout) {
- req->time_event = event_add_timed(ac->ildb->event_ctx, ac,
- timeval_current_ofs(ac->req->timeout, 0),
- ildb_request_timeout, ac);
+ req->time_event = tevent_add_timer(ac->ildb->event_ctx, ac,
+ timeval_current_ofs(ac->req->timeout, 0),
+ ildb_request_timeout, ac);
}
req->async.fn = ildb_callback;
@@ -683,9 +683,9 @@ static int ildb_handle_request(struct ldb_module *module, struct ldb_request *re
if (ildb_dn_is_special(req)) {
- te = event_add_timed(ac->ildb->event_ctx,
- ac, timeval_zero(),
- ildb_auto_done_callback, ac);
+ te = tevent_add_timer(ac->ildb->event_ctx,
+ ac, timeval_zero(),
+ ildb_auto_done_callback, ac);
if (NULL == te) {
return LDB_ERR_OPERATIONS_ERROR;
}
diff --git a/source4/lib/ldb/ldb_tdb/ldb_tdb.c b/source4/lib/ldb/ldb_tdb/ldb_tdb.c
index 76469e356b..9528f5a662 100644
--- a/source4/lib/ldb/ldb_tdb/ldb_tdb.c
+++ b/source4/lib/ldb/ldb_tdb/ldb_tdb.c
@@ -1122,13 +1122,13 @@ static int ltdb_handle_request(struct ldb_module *module,
tv.tv_sec = 0;
tv.tv_usec = 0;
- te = event_add_timed(ev, ac, tv, ltdb_callback, ac);
+ te = tevent_add_timer(ev, ac, tv, ltdb_callback, ac);
if (NULL == te) {
return LDB_ERR_OPERATIONS_ERROR;
}
tv.tv_sec = req->starttime + req->timeout;
- ac->timeout_event = event_add_timed(ev, ac, tv, ltdb_timeout, ac);
+ ac->timeout_event = tevent_add_timer(ev, ac, tv, ltdb_timeout, ac);
if (NULL == ac->timeout_event) {
return LDB_ERR_OPERATIONS_ERROR;
}
diff --git a/source4/lib/ldb/pyldb.c b/source4/lib/ldb/pyldb.c
index 89ef7aeddf..9e98363c6f 100644
--- a/source4/lib/ldb/pyldb.c
+++ b/source4/lib/ldb/pyldb.c
@@ -525,7 +525,7 @@ static PyObject *py_ldb_new(PyTypeObject *type, PyObject *args, PyObject *kwargs
{
PyLdbObject *ret;
struct ldb_context *ldb;
- ldb = ldb_init(NULL, event_context_init(NULL));
+ ldb = ldb_init(NULL, NULL);
if (ldb == NULL) {
PyErr_NoMemory();
return NULL;
diff --git a/source4/lib/ldb/python.mk b/source4/lib/ldb/python.mk
index a672c079a2..6e73b7e33d 100644
--- a/source4/lib/ldb/python.mk
+++ b/source4/lib/ldb/python.mk
@@ -1,8 +1,8 @@
-[PYTHON::swig_ldb]
+[PYTHON::pyldb]
LIBRARY_REALNAME = ldb.$(SHLIBEXT)
-PUBLIC_DEPENDENCIES = LIBLDB LIBEVENTS PYTALLOC
+PUBLIC_DEPENDENCIES = LIBLDB PYTALLOC
-swig_ldb_OBJ_FILES = $(ldbsrcdir)/pyldb.o
-$(swig_ldb_OBJ_FILES): CFLAGS+=-I$(ldbsrcdir)/include
+pyldb_OBJ_FILES = $(ldbsrcdir)/pyldb.o
+$(pyldb_OBJ_FILES): CFLAGS+=-I$(ldbsrcdir)/include
-$(swig_ldb_OBJ_FILES): CFLAGS+=$(CFLAG_NO_CAST_QUAL)
+$(pyldb_OBJ_FILES): CFLAGS+=$(CFLAG_NO_CAST_QUAL)