static struct composite_context *lookupname_send_req(struct wbsrv_domain *domain, void *p);
static NTSTATUS lookupname_recv_req(struct composite_context *ctx, void *p);
-struct composite_context *wb_cmd_lookupname_send(struct wbsrv_service *service,
+struct composite_context *wb_cmd_lookupname_send(TALLOC_CTX *mem_ctx,
+ struct wbsrv_service *service,
const char *dom_name,
const char *name)
{
struct cmd_lookupname_state *state;
- state = talloc(NULL, struct cmd_lookupname_state);
+ state = talloc(mem_ctx, struct cmd_lookupname_state);
state->name = talloc_asprintf(state, "%s\\%s", dom_name, name);
if (state->name == NULL) goto failed;
state->ctx = wb_domain_request_send(state, service,
return status;
}
-NTSTATUS wb_cmd_lookupname(struct wbsrv_service *service,
+NTSTATUS wb_cmd_lookupname(TALLOC_CTX *mem_ctx,
+ struct wbsrv_service *service,
const char *dom_name,
const char *name,
- TALLOC_CTX *mem_ctx, struct wb_sid_object **sid)
+ struct wb_sid_object **sid)
{
struct composite_context *c =
- wb_cmd_lookupname_send(service, dom_name, name);
+ wb_cmd_lookupname_send(mem_ctx, service, dom_name, name);
return wb_cmd_lookupname_recv(c, mem_ctx, sid);
}
static struct composite_context *lookupsid_send_req(struct wbsrv_domain *domain, void *p);
static NTSTATUS lookupsid_recv_req(struct composite_context *ctx, void *p);
-struct composite_context *wb_cmd_lookupsid_send(struct wbsrv_service *service,
+struct composite_context *wb_cmd_lookupsid_send(TALLOC_CTX *mem_ctx,
+ struct wbsrv_service *service,
const struct dom_sid *sid)
{
struct cmd_lookupsid_state *state;
- state = talloc(NULL, struct cmd_lookupsid_state);
+ state = talloc(mem_ctx, struct cmd_lookupsid_state);
state->sid = dom_sid_dup(state, sid);
if (state->sid == NULL) goto failed;
state->ctx = wb_domain_request_send(state, service,
return status;
}
-NTSTATUS wb_cmd_lookupsid(struct wbsrv_service *service,
+NTSTATUS wb_cmd_lookupsid(TALLOC_CTX *mem_ctx, struct wbsrv_service *service,
const struct dom_sid *sid,
- TALLOC_CTX *mem_ctx, struct wb_sid_object **name)
+ struct wb_sid_object **name)
{
struct composite_context *c =
- wb_cmd_lookupsid_send(service, sid);
+ wb_cmd_lookupsid_send(mem_ctx, service, sid);
return wb_cmd_lookupsid_recv(c, mem_ctx, name);
}
DEBUG(5, ("wbsrv_samba3_lookupname called\n"));
- ctx = wb_cmd_lookupname_send(service,
+ ctx = wb_cmd_lookupname_send(s3call, service,
s3call->request.data.name.dom_name,
s3call->request.data.name.name);
NT_STATUS_HAVE_NO_MEMORY(ctx);
return NT_STATUS_NO_MEMORY;
}
- ctx = wb_cmd_lookupsid_send(service, sid);
+ ctx = wb_cmd_lookupsid_send(s3call, service, sid);
NT_STATUS_HAVE_NO_MEMORY(ctx);
/* setup the callbacks */
return result;
}
- ctx = wb_cmd_lookupsid_send(service, state->my_domain, state->sid);
+ ctx = wb_cmd_lookupsid_send(state, service, state->sid);
if (ctx == NULL) goto failed;
ctx->async.fn = sid2domain_recv_name;
ctx->async.private_data = state;