Commit 68575476 authored by Steve French's avatar Steve French Committed by Linus Torvalds
Browse files

[PATCH] cifs: append \* properly on ASCII servers



For older servers which do not support Unicode

Signed-off-by: default avatarSteve French <(sfrench@us.ibm.com)>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 9747dd6f
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -4,7 +4,9 @@ Fix error mapping of the TOO_MANY_LINKS (hardlinks) case.
Do not oops if root user kills cifs oplock kernel thread or
kills the cifsd thread (NB: killing the cifs kernel threads is not
recommended, unmount and rmmod cifs will kill them when they are
no longer needed).
no longer needed).  Fix readdir to ASCII servers (ie older servers
which do not support Unicode) and also require asterik.


Version 1.33
------------
+4 −2
Original line number Diff line number Diff line
@@ -2451,12 +2451,14 @@ findFirstRetry:
		name_len += 2;
	} else {	/* BB add check for overrun of SMB buf BB */
		name_len = strnlen(searchName, PATH_MAX);
		name_len++;	/* trailing null */
/* BB fix here and in unicode clause above ie
		if(name_len > buffersize-header)
			free buffer exit; BB */
		strncpy(pSMB->FileName, searchName, name_len);
		pSMB->FileName[name_len] = 0; /* just in case */
		pSMB->FileName[name_len] = '\\';
		pSMB->FileName[name_len+1] = '*';
		pSMB->FileName[name_len+2] = 0;
		name_len += 3;
	}

	params = 12 + name_len /* includes null */ ;