summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/libads/sasl.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/source3/libads/sasl.c b/source3/libads/sasl.c
index 078ff826e3..29d4533a54 100644
--- a/source3/libads/sasl.c
+++ b/source3/libads/sasl.c
@@ -192,19 +192,14 @@ static ADS_STATUS ads_sasl_spnego_bind(ADS_STRUCT *ads)
#ifdef HAVE_KRB5
if (!(ads->auth.flags & ADS_AUTH_DISABLE_KERBEROS) &&
got_kerberos_mechanism) {
- int krb_error;
status = ads_sasl_spnego_krb5_bind(ads, principal);
if (ADS_ERR_OK(status))
return status;
-
- krb_error = ads_kinit_password(ads);
- if (krb_error) {
- return ADS_ERROR_KRB5(krb_error);
- } else {
+ if (ads_kinit_password(ads) == 0) {
status = ads_sasl_spnego_krb5_bind(ads, principal);
- if (ADS_ERR_OK(status))
- return status;
- }
+ }
+ if (ADS_ERR_OK(status))
+ return status;
}
#endif