'smbclient' returns incomplete 'dir' listing against pretty much any SMB server (WinXP SP2, WinNT SP6a, Samba 3.0.12, Samba 2.2.7a-security-rollup-fix [Fedora Core 1)], Win98 SE). Actually get trap from Win98 SE server: do_list: [\*] ERRDOS - ERRbadfunc (Invalid function.) Error in dskattr: ERRDOS - ERRbadfunc (Invalid function.) Segmentation Fault(coredump) No problems from same servers when using x86 Fedora Core 1 'smbclient' (version above). Compiled on Ultra 10 running Solaris 8 with recent patch cluster applied. Used Sun Studio 7, cc 5.4 to compile 64-bit executables. CFLAGS='-fast -xtarget=ultra2 -xarch=v9a'
Can you send me a trace of a successful use on the FC1 box and the failure on the Solaris box ? raw snoop, tcpdump, or ethereal captures is fine. If using tcpdump set the snaplen to 0 (-s 0).
Created attachment 1070 [details] Output from 'smbclient' dir
Created attachment 1071 [details] 'tcpdump' of 'smbclient' 'dir' command Used "tcpdump -n -s 2048 port 139" command. Solaris 'tcpdump' takes "-s 0" to me zero bytes, not unlimited bytes.
Created attachment 1072 [details] output from 'smbclient' 'dir' command -- bad
sorry. I need raw dumps. So something like root# tcpdump -w /tmp/dump.pcap -s 4096 -i eth0 port 139 or port 445 for a successful run on the FC1 box and also a failed run from smbclient on the Solaris box.
Created attachment 1073 [details] 'tcpdump' of 'smbclient' 'dir' command -- bad tcpdump -n -vv -s 2048 -X port 139
Created attachment 1074 [details] output from 'smbclient' 'dir' command -- good
Created attachment 1075 [details] 'tcpdump' of 'smbclient' 'dir' command -- good tcpdump -n -vv -s 2048 -X port 139
Created attachment 1076 [details] 'tcpdump' of 'smbclient' 'dir' command -- good, raw tcpdump -w smbclient_dir_tcpdump_good.raw -s 4096 port 139
Created attachment 1077 [details] 'tcpdump' of 'smbclient' 'dir' command -- bad, raw tcpdump -w smbclient_dir_tcpdump_bad.raw -s 4096 port 139
Created attachment 1078 [details] patch for fix breakage in cli_list_new() we were trashing the info level with the resume key.
please test this patch. There's more cli_list_new() patches from jeremy in the works to handle missing directories.
That was fast. Works!
we had a couple of other reports that helped pinpoint the problem as well. Thanks for reporting this.
sorry for the same, cleaning up the database to prevent unecessary reopens of bugs.