libsmb: Print the principal name that we failed to kinit for.
authorAndrew Bartlett <abartlet@samba.org>
Fri, 3 Oct 2014 18:06:35 +0000 (07:06 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 17 Oct 2014 10:57:07 +0000 (12:57 +0200)
This should aid debugging when this is called from an automated process.

Andrew Bartlett

Change-Id: I2c7291ab3f67f9f7462d7c52c8c9a4b042f7ec5a
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
source3/libsmb/cliconnect.c

index 950865167d15a9ecd42fe34f987fe3a87f5e9aeb..e1fc4e903cc0716cabdc40f02dc5c4e15907eefb 100644 (file)
@@ -1826,6 +1826,12 @@ static struct tevent_req *cli_session_setup_spnego_send(
                const char *remote_name = smbXcli_conn_remote_name(cli->conn);
                char *tmp;
 
+
+               tmp = cli_session_setup_get_principal(
+                       talloc_tos(), principal, remote_name, dest_realm);
+               TALLOC_FREE(principal);
+               principal = tmp;
+
                if (pass && *pass) {
                        int ret;
 
@@ -1833,8 +1839,8 @@ static struct tevent_req *cli_session_setup_spnego_send(
                        ret = kerberos_kinit_password(user, pass, 0 /* no time correction for now */, NULL);
 
                        if (ret){
+                               DEBUG(0, ("Kinit for %s to access %s failed: %s\n", user, principal, error_message(ret)));
                                TALLOC_FREE(principal);
-                               DEBUG(0, ("Kinit failed: %s\n", error_message(ret)));
                                if (cli->fallback_after_kerberos)
                                        goto ntlmssp;
                                state->result = ADS_ERROR_KRB5(ret);
@@ -1843,11 +1849,6 @@ static struct tevent_req *cli_session_setup_spnego_send(
                        }
                }
 
-               tmp = cli_session_setup_get_principal(
-                       talloc_tos(), principal, remote_name, dest_realm);
-               TALLOC_FREE(principal);
-               principal = tmp;
-
                if (principal) {
                        subreq = cli_session_setup_kerberos_send(
                                state, ev, cli, principal);