diff options
Diffstat (limited to 'source4/librpc/rpc/dcerpc_util.c')
-rw-r--r-- | source4/librpc/rpc/dcerpc_util.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source4/librpc/rpc/dcerpc_util.c b/source4/librpc/rpc/dcerpc_util.c index 1cfd6aa8a7..f95678eb77 100644 --- a/source4/librpc/rpc/dcerpc_util.c +++ b/source4/librpc/rpc/dcerpc_util.c @@ -445,6 +445,7 @@ static void continue_auth_auto(struct composite_context *ctx) NT_STATUS_UNSUCCESSFUL on a authentication error on RPC */ const char *principal; + const char *endpoint; principal = gensec_get_target_principal(s->pipe->conn->security_state.generic_state); if (principal == NULL) { @@ -455,9 +456,11 @@ static void continue_auth_auto(struct composite_context *ctx) } } + endpoint = dcerpc_binding_get_string_option(s->binding, "endpoint"); + if ((cli_credentials_failed_kerberos_login(s->credentials, principal, &s->logon_retries) || cli_credentials_wrong_password(s->credentials)) && - s->binding->endpoint != NULL) { + endpoint != NULL) { /* * Retry SPNEGO with a better password * send a request for secondary rpc connection |