[linux-cifs-client] Incorrect FIND_NEXT2 request
Richard Hughes
richard at hughsie.com
Sun May 2 12:20:57 GMT 2004
I have a directory on a samba server sharing lots of small
files, say dir000.txt to dir999.txt
samba version (server): 3.0.3-2.pre2
cifs version (client) : 1.12
kernel version (client) : 2.6.6rc3 + CIFS-cvs
The share mounts correctly, and correctly displays small directory
outputs, but when a large number of files are present, it displays:
dir000.txt to dir122.txt and nothing more.
I used ethereal to trace the network activity, and found the following..
[client types ls]
client->server QUERY_PATH_INFO, Query File Unix Basic, Path :
server->server QUERY_PATH_INFO
client->server FIND_FIRST2, Pattern: \*
server->server FIND_FIRST2, Files:[....]
client->server FIND_NEXT2, Continue: dir060.txt
server->server FIND_NEXT2, Files:[....]
client->server FIND_NEXT2, Continue: [\001]
server->server FIND_NEXT2
then the connection closes.
The second request for FIND_NEXT2 just sends 0x001, rather than the file
dir122.txt - this must be a bug in the cifs code somewhere. Anybody got
any ideas?
Google brought up some details about truncated directory listings for the
2.4 kernel, but that was some time ago.
Richard Hughes
More information about the linux-cifs-client
mailing list