mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-06 02:24:14 +08:00
[CIFS] Fix missing entries in search results when very long file names and
more than 50 (or so) of such long search entries in the directory. FindNext could send corrupt last byte of resume name when resume key was a few hundred bytes long file name or longer. Fixes Samba Bug # 2932 Signed-off-by: Steve French (sfrench@us.ibm.com)
This commit is contained in:
parent
bcf7e34a71
commit
ef6724e321
@ -2628,6 +2628,9 @@ int CIFSFindNext(const int xid, struct cifsTconInfo *tcon,
|
||||
if(name_len < PATH_MAX) {
|
||||
memcpy(pSMB->ResumeFileName, psrch_inf->presume_name, name_len);
|
||||
byte_count += name_len;
|
||||
/* 14 byte parm len above enough for 2 byte null terminator */
|
||||
pSMB->ResumeFileName[name_len] = 0;
|
||||
pSMB->ResumeFileName[name_len+1] = 0;
|
||||
} else {
|
||||
rc = -EINVAL;
|
||||
goto FNext2_err_exit;
|
||||
|
Loading…
Reference in New Issue
Block a user