diff options
Diffstat (limited to 'source3/auth')
-rw-r--r-- | source3/auth/auth.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/source3/auth/auth.c b/source3/auth/auth.c index a7fe1c624c..df93e0d27a 100644 --- a/source3/auth/auth.c +++ b/source3/auth/auth.c @@ -438,7 +438,7 @@ static NTSTATUS make_auth_context_text_list(TALLOC_CTX *mem_ctx, char **text_list) { auth_methods *list = NULL; - auth_methods *t = NULL; + auth_methods *t, *method = NULL; NTSTATUS nt_status; if (!text_list) { @@ -460,7 +460,14 @@ static NTSTATUS make_auth_context_text_list(TALLOC_CTX *mem_ctx, (*auth_context)->auth_method_list = list; - return nt_status; + /* Look for the first module to provide a start_gensec hook, and set that if provided */ + for (method = (*auth_context)->auth_method_list; method; method = method->next) { + if (method->start_gensec) { + (*auth_context)->start_gensec = method->start_gensec; + break; + } + } + return NT_STATUS_OK; } /*************************************************************************** |