smb3: warn on confusing error scenario with sec=krb5
authorSteve French <stfrench@microsoft.com>
Thu, 16 Jul 2020 05:34:21 +0000 (00:34 -0500)
committerSteve French <stfrench@microsoft.com>
Sun, 2 Aug 2020 23:00:25 +0000 (18:00 -0500)
When mounting with Kerberos, users have been confused about the
default error returned in scenarios in which either keyutils is
not installed or the user did not properly acquire a krb5 ticket.
Log a warning message in the case that "ENOKEY" is returned
from the get_spnego_key upcall so that users can better understand
why mount failed in those two cases.

CC: Stable <stable@vger.kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/smb2pdu.c

index 2f4cdd2..4926887 100644 (file)
@@ -1387,6 +1387,8 @@ SMB2_auth_kerberos(struct SMB2_sess_data *sess_data)
        spnego_key = cifs_get_spnego_key(ses);
        if (IS_ERR(spnego_key)) {
                rc = PTR_ERR(spnego_key);
+               if (rc == -ENOKEY)
+                       cifs_dbg(VFS, "Verify user has a krb5 ticket and keyutils is installed\n");
                spnego_key = NULL;
                goto out;
        }