[CIFS] Fix mask so can set new cifs security flags properly

Signed-off-by: Steve French <sfrench@us.ibm.com>
This commit is contained in:
Steve French 2006-06-04 22:21:07 +00:00
parent 254e55ed03
commit 9312f6754d
3 changed files with 6 additions and 7 deletions

View file

@ -860,8 +860,6 @@ security_flags_write(struct file *file, const char __user *buffer,
char flags_string[12];
char c;
cERROR(1,("size %ld",count)); /* BB removeme BB */
if((count < 1) || (count > 11))
return -EINVAL;
@ -883,14 +881,14 @@ security_flags_write(struct file *file, const char __user *buffer,
flags = simple_strtoul(flags_string, NULL, 0);
cERROR(1,("sec flags 0x%x", flags)); /* BB FIXME make cFYI */
cFYI(1,("sec flags 0x%x", flags));
if(flags <= 0) {
cERROR(1,("invalid security flags %s",flags_string));
return -EINVAL;
}
if((flags & CIFSSEC_MASK) != CIFSSEC_MASK) {
if(flags & ~CIFSSEC_MASK) {
cERROR(1,("attempt to set unsupported security flags 0x%d",
flags & ~CIFSSEC_MASK));
return -EINVAL;

View file

@ -504,7 +504,7 @@ CIFSSMBNegotiate(unsigned int xid, struct cifsSesInfo *ses)
#endif /* CIFS_WEAK_PW_HASH */
cERROR(1,("Server requests plain text password"
" but client support disabled"));
if(extended_security & CIFSSEC_MUST_NTLMV2)
server->secType = NTLMv2;
else

View file

@ -339,9 +339,10 @@ CIFS_SessSetup(unsigned int xid, struct cifsSesInfo *ses, int first_time,
return -EOPNOTSUPP;
#endif
wct = 10; /* lanman 2 style sessionsetup */
} else if((type == NTLM) || (type == NTLMv2)) /* NTLMv2 may retry NTLM */
} else if((type == NTLM) || (type == NTLMv2)) {
/* For NTLMv2 failures eventually may need to retry NTLM */
wct = 13; /* old style NTLM sessionsetup */
else /* same size for negotiate or auth, NTLMSSP or extended security */
} else /* same size for negotiate or auth, NTLMSSP or extended security */
wct = 12;
rc = small_smb_init_no_tc(SMB_COM_SESSION_SETUP_ANDX, wct, ses,