From: Stefan Metzmacher Date: Fri, 23 Mar 2018 13:48:46 +0000 (+0100) Subject: s3:messages: allow messaging_dgm_ref() to use wrapper tevent_context X-Git-Tag: tdb-1.3.16~50 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9dc332060cf5f249ea887dbc60ec7a39b6f91120;p=thirdparty%2Fsamba.git s3:messages: allow messaging_dgm_ref() to use wrapper tevent_context This is only allowed if the raw tevent context is already registered. Signed-off-by: Stefan Metzmacher Reviewed-by: Ralph Boehme --- diff --git a/source3/lib/messages_dgm_ref.c b/source3/lib/messages_dgm_ref.c index fd170961746..12ff21ca628 100644 --- a/source3/lib/messages_dgm_ref.c +++ b/source3/lib/messages_dgm_ref.c @@ -55,18 +55,6 @@ void *messaging_dgm_ref(TALLOC_CTX *mem_ctx, struct tevent_context *ev, { struct msg_dgm_ref *result, *tmp_refs; - if (tevent_context_is_wrapper(ev)) { - /* - * This is really a programmer error! - * - * The main/raw tevent context should - * have been registered first! - */ - DBG_ERR("Should not be used with a wrapper tevent context\n"); - *err = EINVAL; - return NULL; - } - result = talloc(mem_ctx, struct msg_dgm_ref); if (result == NULL) { *err = ENOMEM; @@ -87,6 +75,18 @@ void *messaging_dgm_ref(TALLOC_CTX *mem_ctx, struct tevent_context *ev, if (refs == NULL) { int ret; + if (tevent_context_is_wrapper(ev)) { + /* + * This is really a programmer error! + * + * The main/raw tevent context should + * have been registered first! + */ + DBG_ERR("Should not be used with a wrapper tevent context\n"); + *err = EINVAL; + return NULL; + } + ret = messaging_dgm_init(ev, unique, socket_dir, lockfile_dir, msg_dgm_ref_recv, NULL); DBG_DEBUG("messaging_dgm_init returned %s\n", strerror(ret));