cifs: change bleft in decode_unicode_ssetup back to signed type
authorJeff Layton <jlayton@redhat.com>
Wed, 27 Apr 2011 17:25:51 +0000 (13:25 -0400)
committerSteve Conklin <sconklin@canonical.com>
Thu, 2 Jun 2011 19:23:19 +0000 (14:23 -0500)
commit16d92d9f2c1ad1bd36ac21b701f47ed411e1f0c5
treed04ed883c9d92d9ecfea378592cf782a814b973c
parentda41cd31e2d0fc9fd134c9b8bcf7973faa479372
cifs: change bleft in decode_unicode_ssetup back to signed type

BugLink: http://bugs.launchpad.net/bugs/788691

commit bfacf2225a955bea9c41c707fc72ba16009674a0 upstream.

The buffer length checks in this function depend on this value being a
signed data type, but 690c522fa converted it to an unsigned type.

Also, eliminate a problem with the null termination check in the same
function. cifs_strndup_from_ucs handles that situation correctly
already, and the existing check could potentially lead to a buffer
overrun since it increments bleft without checking to see whether it
falls off the end of the buffer.

Reported-and-Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Steve Conklin <sconklin@canonical.com>
fs/cifs/sess.c