diff options
author | Andrew Tridgell <tridge@samba.org> | 2001-10-21 00:10:16 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2001-10-21 00:10:16 +0000 |
commit | b7331220c65747c6d7de2b05372839c20f712439 (patch) | |
tree | 271071392468efd21ad8b0cfdc24c49bdc14dc74 | |
parent | 7cd889f566ebe352721943e53a055db5b817f12f (diff) | |
download | samba-b7331220c65747c6d7de2b05372839c20f712439.tar.gz samba-b7331220c65747c6d7de2b05372839c20f712439.tar.bz2 samba-b7331220c65747c6d7de2b05372839c20f712439.zip |
fixed the spnego detection code in session setup
this gets share mode working again
(This used to be commit 8286e5307ca47f14d27ee0d9bc9700d52151d56a)
-rw-r--r-- | source3/smbd/sesssetup.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/smbd/sesssetup.c b/source3/smbd/sesssetup.c index 1ca7066c41..3cac6f338b 100644 --- a/source3/smbd/sesssetup.c +++ b/source3/smbd/sesssetup.c @@ -80,6 +80,11 @@ static int reply_spnego_kerberos(connection_struct *conn, return ERROR_NT(NT_STATUS_LOGON_FAILURE); } +#if 0 + chdir("/home/tridge"); + file_save("ticket.dat", ticket.data, ticket.length); +#endif + packet.length = ticket.length; packet.data = (krb5_pointer)ticket.data; @@ -196,7 +201,8 @@ static int reply_spnego_negotiate(connection_struct *conn, for (i=0;OIDs[i];i++) { DEBUG(3,("Got OID %s\n", OIDs[i])); - if (strcmp(OID_KERBEROS5_OLD, OIDs[i]) == 0) { + if (strcmp(OID_KERBEROS5, OIDs[i]) == 0 || + strcmp(OID_KERBEROS5_OLD, OIDs[i]) == 0) { got_kerberos = True; } free(OIDs[i]); @@ -504,7 +510,7 @@ int reply_sesssetup_and_X(connection_struct *conn, char *inbuf,char *outbuf, BOOL doencrypt = global_encrypted_passwords_negotiated; START_PROFILE(SMBsesssetupX); - if (SVAL(inbuf, smb_flg2) & FLAGS2_EXTENDED_SECURITY) { + if (SVAL(inbuf, smb_wct) == 12) { /* it's a SPNEGO session setup */ return reply_sesssetup_and_X_spnego(conn, inbuf, outbuf, length, bufsize); } |