[Samba] File listing problems in 3.0.13

Jeremy Allison jra at samba.org
Fri Apr 15 17:29:39 GMT 2005


On Fri, Apr 15, 2005 at 01:27:29PM -0400, Cale Fairchild wrote:
> Thanks for another quick response, I have done some poking in the code and 
> found that the cause of the problem for the missing file is that in the 
> function get_lanman2_dir_entry in trans2.c, dname returns false on the last 
> entry of the directory. I also noticed that where changes in the assignment 
> of dname between 11 and 12
> 
> < trans2.c.3.0.11
> >trans2.c.3.0.12
> ---
> < 		prev_dirpos = TellDir(conn->dirptr);
> < 		dname = ReadDirName(conn->dirptr); 
> ---
> >              long curr_dirpos = prev_dirpos = dptr_TellDir(conn->dirptr);
> >              dname = dptr_ReadDirName(conn->dirptr,&curr_dirpos,&sbuf);
> 
> 		if (!dname)
> 			return(False)
> 
> I am going to try and track it down further but I am wondering if this 
> triggers any thoughts.
> 
> Another thing that I notice in the code is that I get messages such as:
> 
> get_lanman2_dir_entry:readdir on dirptr 0x10425968 now at offset -183597246
> 
> in the logs, the offset grows through the positive numbers and then it 
> prints negative from high to low (long int overflow) yet the files seem to 
> be shown. However the last entry printed is very close to -1 again 
> (possible overflow of unsigned long?)
> 
> Sorry to bother you about this again but I don't really know how to 
> approach SGI with this since I don't know how to describe the problem to 
> them so that they understand it and I get differing results with the same 
> OS and the same compilers.

Work with James Peach of SGI on this. What is the size of the result from
a telldir() on a 64-bit IRIX box.

Jeremy.


More information about the samba mailing list