Executing command dir V: (V: is samba 3.0.20rc1-SVN-build-8571 drive) from OS/2 DOS BOX causes infinitive ".." entries.
Created attachment 1317 [details] Sniff running dir command from OS/2 dos box on samba drive Here is the sniff of running dir command from OS/2 DOS BOX on a samba drive command was: C:\>dir v: The volume label in drive V is share. The Volume Serial Number is 1392:04E7. Directory of V:\ . <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 .. <DIR> 19.07.05 10:17 ^C
Created attachment 1318 [details] Sniff running dir command from OS/2 dos box on samba 3.0.14a drive Here is the sniff of running dir command from OS/2 DOS BOX on a samba 3.0.14a drive command was: C:\>dir v: [...] 37999434 DEF 15 19.07.05 9:03 37999434 FON 28 19.07.05 9:03 37999434 VUE 291 19.07.05 9:03 OQN155~7 4449 19.07.05 10:45 FPD26 BUG <DIR> 19.07.05 9:03 41 file(s) 663182 bytes used 1150287872 bytes free
Ok, I can see the problem - we're returning an invalid offset value so subsequent seeks start at zero. It's a little late here so I'm going to investigate and fix this in the morning. Thanks. Jeremy.
Created attachment 1319 [details] Proposed patch I think the problem is that the top 16 bits of the "server state" field must be non-zero. As we're using the 32 bit field as an offset then normally this field will be zero. W2K3 fills this field with a counter enumerating the number of SMBsearch calls on this directory - starting at 1. Add back the 1<<31 bit flag DPTR_MASK to ensure this is non-zero - with better checks on use. Jeremy.
Created attachment 1320 [details] Sniff running dir command with patched samba 3.0.20 Patch doesn't help :-( I've applied it and recompiled samba. Dir from os/2 dos box prints ".." entries infinitively as in previous build. Here is sniff of this. I'll compile lastest SVN build of Samba and try again.
Created attachment 1321 [details] Sniff running dir command on samba 3.0.20rc1-SVN-build-8617 Problem still exists in samba 3.0.20rc1-SVN-build-8617 Here is sniff
Thanks for the updates - late night here again - I'll examine tomorrow morning. Jeremy.
Ok, what I *really* need now to fix this is a sniff of OS/2 doing the same directory listing to (preferably) Windows 2003. If not w2k3, then w2k or even NT4 will do at a pinch. I really want to know what it returns in the flags2 field here. That's my current working theory. Jeremy.
Created attachment 1325 [details] Sniff running dir from OS/2 dos box to Win2k Server Unfortunatly, there is not Win2003 Server in our network Here is sniff running dir command from OS/2 DOS BOX to Win2K server drive.
Ok, I've managed to get a copy of OS/2 warp server for ebusiness running on my Linux box with svista and I can't reproduce the problem. When I do a dir on a mapped drive it does trans2 calls, not the old SMBsearch calls. What version of OS/2 are you running and how do you reproduce this ? Thanks, Jeremy.
Never mind - I'm an idiot... I reproduced it in a DOS box. I'll work on it now... Jeremy
Created attachment 1330 [details] Patch
Ok, this fixes it for sure. Turns out the OS/2 dos box doesn't like two offsets to be identical. Make offsets for . and .. different (and explicit). Jeremy.
Samba 3.0.20rc1-SVN-build-8695 works correctly. Thank you!
sorry for the same, cleaning up the database to prevent unecessary reopens of bugs.