diff options
author | Steve French <sfrench@us.ibm.com> | 2008-08-19 21:35:33 +0200 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2008-08-19 21:35:33 +0200 |
commit | c16fefa56334e8d0197492607e473fdbb813073f (patch) | |
tree | 8dc227ea6a712939ce216dd93746dc9baa4ee13f /fs/cifs/cifs_spnego.c | |
parent | cifs: add local server pointer to cifs_setup_session (diff) | |
download | linux-c16fefa56334e8d0197492607e473fdbb813073f.tar.xz linux-c16fefa56334e8d0197492607e473fdbb813073f.zip |
[CIFS] distinguish between Kerberos and MSKerberos in upcall
Properly handle MSKRB5 by passing sec=mskrb5 to the upcall so that the
spengo blob can be generated appropriately. Also, make
decode_negTokenInit prefer whichever mechanism is first in the list.
Needed for some NetApp servers, and possibly some older
versions of Windows which treat the two KRB5 mechanisms differently.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/cifs_spnego.c')
-rw-r--r-- | fs/cifs/cifs_spnego.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/cifs/cifs_spnego.c b/fs/cifs/cifs_spnego.c index 2434ab0e8791..117ef4bba68e 100644 --- a/fs/cifs/cifs_spnego.c +++ b/fs/cifs/cifs_spnego.c @@ -114,9 +114,11 @@ cifs_get_spnego_key(struct cifsSesInfo *sesInfo) dp = description + strlen(description); - /* for now, only sec=krb5 is valid */ + /* for now, only sec=krb5 and sec=mskrb5 are valid */ if (server->secType == Kerberos) sprintf(dp, ";sec=krb5"); + else if (server->secType == MSKerberos) + sprintf(dp, ";sec=mskrb5"); else goto out; |