summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2009-12-07 15:06:56 -0500
committerStephen Gallagher <sgallagh@redhat.com>2009-12-07 16:16:31 -0500
commit0d251eb1f4544cab4f9d48b538ed04cd37032c77 (patch)
tree50b12b06ee50810150834b1f8d7b381d354daf73
parent787dce1c2f101c8fa0b27b271fce5d1eb2f62a28 (diff)
downloadsssd-0d251eb1f4544cab4f9d48b538ed04cd37032c77.tar.gz
sssd-0d251eb1f4544cab4f9d48b538ed04cd37032c77.tar.xz
sssd-0d251eb1f4544cab4f9d48b538ed04cd37032c77.zip
Allow nesting to fix #310
-rw-r--r--server/Makefile.am1
-rw-r--r--server/providers/ldap/sdap_async_accounts.c1
-rw-r--r--server/util/util.h3
3 files changed, 5 insertions, 0 deletions
diff --git a/server/Makefile.am b/server/Makefile.am
index 8f36f72d0..fdaefea2a 100644
--- a/server/Makefile.am
+++ b/server/Makefile.am
@@ -167,6 +167,7 @@ AM_CPPFLAGS = -Wall \
-DSSS_PAM_SOCKET_NAME=\"$(pipepath)/pam\" \
-DSSS_PAM_PRIV_SOCKET_NAME=\"$(pipepath)/private/pam\" \
-DUSE_MMAP=1 \
+ -DTEVENT_DEPRECATED=1\
-DLOCALEDIR=\"$(localedir)\"
EXTRA_DIST = build/config.rpath
diff --git a/server/providers/ldap/sdap_async_accounts.c b/server/providers/ldap/sdap_async_accounts.c
index e4656cd7e..abebe2883 100644
--- a/server/providers/ldap/sdap_async_accounts.c
+++ b/server/providers/ldap/sdap_async_accounts.c
@@ -680,6 +680,7 @@ static int sdap_find_entry_by_origDN(TALLOC_CTX *memctx,
tevent_req_set_callback(req, sdap_find_entry_by_origDN_done, state);
/* WARNING: SYNC LOOP HERE */
+ tevent_loop_allow_nesting(ev);
while (state->done == 0) {
tevent_loop_once(ev);
}
diff --git a/server/util/util.h b/server/util/util.h
index 7e9c182f0..1c583e231 100644
--- a/server/util/util.h
+++ b/server/util/util.h
@@ -142,6 +142,9 @@ errno_t set_debug_file_from_fd(const int fd);
req->async.fn(req); \
} \
} while(0)
+
+/* noop */
+#define tevent_loop_allow_nesting(x)
#endif
#define TEVENT_REQ_RETURN_ON_ERROR(req) do { \