can I define "static" interfaces in source/lib/interfaces.c?

Tomasz Chmielewski mangoo at wpkg.org
Mon Feb 13 12:10:46 GMT 2006


Martin Zielinski wrote:

(...)

> Did some tests and comparisons between an ARM smbclient and a MIPS (BE) 
> smbclient.
> 
> 1st thing is, that I get several compiler warnings like these:
> 
> libsmb/clireadwrite.c:35: warning: right shift count >= width of type
> 
> they come from code like this:
> 
> if ((SMB_BIG_UINT)offset >> 32)    
> 
> where sizeof (SMB_BIG_UINT) is 4 on ARM _and_ MIPS. (On my i686 it's: 8)
> 
> Now comes the compiler:
> arm gcc: (0x40bd >> 32) == 0
> mips gcc: (0x40bd >> 32) == 0x40bd (!)
> 
> so everything after that goes wrong.
> 
> The smbclient error can be (warning: hack) fixed, when you change the 
> code line
> - if ((SMB_BIG_UINT)offset >> 32)
> with
> + if (sizeof (SMB_BIG_UINT) > 4 && (SMB_BIG_UINT)offset >> 32)
> 
> Perhaps, you find a more elegant way.

Hmm, it didn't help in my case, still get the error (reply_write_and_X - 
large offset (c237 << 32) used and we don't support 64 bit offsets) and 
the files are cut to 16573 bytes :(

Any more ideas how to debug it?

-- 
Tomasz Chmielewski
http://wpkg.rg


More information about the samba-technical mailing list