Len Baker 6c4857203f CIFS: Fix a potencially linear read overflow
[ Upstream commit f980d055a0f858d73d9467bb0b570721bbfcdfb8 ]

strlcpy() reads the entire source buffer first. This read may exceed the
destination size limit. This is both inefficient and can lead to linear
read overflows if a source string is not NUL-terminated.

Also, the strnlen() call does not avoid the read overflow in the strlcpy
function when a not NUL-terminated string is passed.

So, replace this block by a call to kstrndup() that avoids this type of
overflow and does the same.

Fixes: 066ce6899484d ("cifs: rename cifs_strlcpy_to_host and make it use new functions")
Signed-off-by: Len Baker <len.baker@gmx.com>
Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-09-15 09:50:43 +02:00
..
2020-10-22 12:17:52 -05:00
2020-06-01 00:10:18 -05:00
2020-11-15 23:05:33 -06:00
2020-06-01 00:10:18 -05:00
2021-01-19 18:27:19 +01:00
2021-08-04 12:46:45 +02:00
2021-09-08 08:49:01 +02:00
2020-07-09 10:06:52 -05:00
2020-10-22 12:16:24 -05:00
2020-08-02 18:00:25 -05:00
2020-06-01 00:10:18 -05:00
2019-01-24 09:37:33 -06:00