From 53d41f3b1b0b7fc3550e0ee4906405f7afbf114c Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Wed, 29 Aug 2007 12:43:23 +0000 Subject: r24778: Make sure krb5 locator requests go to a separate locator winbind child. Guenther (This used to be commit fb9228b8d167552f0a046ab674f66d4e5b73f5b6) --- source3/nsswitch/winbindd_misc.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'source3/nsswitch/winbindd_misc.c') diff --git a/source3/nsswitch/winbindd_misc.c b/source3/nsswitch/winbindd_misc.c index 8f1e653619..c32f052e3c 100644 --- a/source3/nsswitch/winbindd_misc.c +++ b/source3/nsswitch/winbindd_misc.c @@ -270,6 +270,18 @@ enum winbindd_result winbindd_dual_getdcname(struct winbindd_domain *domain, return WINBINDD_OK; } +static struct winbindd_child static_locator_child; + +void init_locator_child(void) +{ + setup_domain_child(NULL, &static_locator_child, "locator"); +} + +struct winbindd_child *locator_child(void) +{ + return &static_locator_child; +} + void winbindd_dsgetdcname(struct winbindd_cli_state *state) { state->request.domain_name @@ -278,7 +290,7 @@ void winbindd_dsgetdcname(struct winbindd_cli_state *state) DEBUG(3, ("[%5lu]: DsGetDcName for %s\n", (unsigned long)state->pid, state->request.domain_name)); - sendto_domain(state, find_our_domain()); + sendto_child(state, locator_child()); } enum winbindd_result winbindd_dual_dsgetdcname(struct winbindd_domain *domain, @@ -603,3 +615,4 @@ void winbindd_priv_pipe_dir(struct winbindd_cli_state *state) request_ok(state); } + -- cgit