svn commit: samba r18249 - in
branches/SAMBA_4_0/source/auth/gensec: .
abartlet at samba.org
abartlet at samba.org
Fri Sep 8 04:36:42 GMT 2006
Author: abartlet
Date: 2006-09-08 04:36:41 +0000 (Fri, 08 Sep 2006)
New Revision: 18249
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=18249
Log:
Keep trying to start an GENSEC mech from the list until one actually
starts.
Andrew Bartlett
Modified:
branches/SAMBA_4_0/source/auth/gensec/gensec.c
Changeset:
Modified: branches/SAMBA_4_0/source/auth/gensec/gensec.c
===================================================================
--- branches/SAMBA_4_0/source/auth/gensec/gensec.c 2006-09-08 04:36:00 UTC (rev 18248)
+++ branches/SAMBA_4_0/source/auth/gensec/gensec.c 2006-09-08 04:36:41 UTC (rev 18249)
@@ -727,11 +727,12 @@
*/
_PUBLIC_ NTSTATUS gensec_start_mech_by_sasl_list(struct gensec_security *gensec_security,
- const char **sasl_names)
+ const char **sasl_names)
{
NTSTATUS nt_status;
TALLOC_CTX *mem_ctx = talloc_new(gensec_security);
const struct gensec_security_ops **ops;
+ int i;
if (!mem_ctx) {
return NT_STATUS_NO_MEMORY;
}
@@ -743,7 +744,12 @@
talloc_free(mem_ctx);
return NT_STATUS_INVALID_PARAMETER;
}
- nt_status = gensec_start_mech_by_ops(gensec_security, ops[0]);
+ for (i=0; ops[i]; i++) {
+ nt_status = gensec_start_mech_by_ops(gensec_security, ops[i]);
+ if (!NT_STATUS_EQUAL(nt_status, NT_STATUS_INVALID_PARAMETER)) {
+ break;
+ }
+ }
talloc_free(mem_ctx);
return nt_status;
}
More information about the samba-cvs
mailing list