[Samba] Re: Test Failure for RW1 with samba-3.0.30, Solaris 9

David Eisner deisner at gmail.com
Mon Jun 2 15:30:59 GMT 2008

On Thu, May 29, 2008 at 3:19 PM, David Eisner <deisner at gmail.com> wrote:
> I'm trying to build and install Samba 3.0.30 on a Solaris 9 SPARC machine.
> When I do a "make test", the RW1 test is failing.   If I go back and
> configure and build 3.0.28 with the same settings, and do a make test,
> everything passes.  Here's what I'm seeing with 3.0.30:

More information, hoping one of the developers might point me in the
right direction (or tell me to file a bug report):

RW1 is implemented with torture.c:run_readwritetest(), which calls
rw_torture2().  This in turn runs through a loop where it writes and
reads randomly sized chunks of data.  When this buffer size is larger
than about 130K, the error occurs.  Here is the call stack:

 1  1 rw_torture2         1  torture/torture.c
  2  1 cli_read          619  torture/torture.c
  3  1 cli_receive_smb   102  libsmb/clireadwrite.c
  4  1 client_receive_smb    94  libsmb/clientgen.c
  5  1 receive_smb_raw    61  libsmb/clientgen.c

Here is an example of the problem, with some debugging statements I
added into the code:

##DRE: rw_torture2: cli_read, buf_size == 130388
##DRE: cli_read: size = 130388
##DRE: receive_smb_raw: Invalid packet length! len == (130107 bytes),
buflen == (130048).
##DRE: receive_smb_raw: returning False 1
##DRE: client_receive_smb: returning 0
##DRE: cli_receive_smb: returning ret 0: 0
##DRE: cli_read: Returning -1 1
read failed (Read error: Error 0)
read -1, expected 130388

Here's where the problem begins, in receive_smb_raw:

 BOOL receive_smb_raw(int fd, char *buffer, size_t buflen, unsigned int timeout)
    ssize_t len,ret;

    smb_read_error = 0;

    len = read_smb_length_return_keepalive(fd,buffer,timeout);
    // ...
    if (len > buflen) {

My interpretation of this is that the length of the packet read form
the server is larger than the buffer length specified in cli->bufsize,
and that this is "bad."  Where should I look next?  Thanks.


David Eisner http://cradle.brokenglass.com

More information about the samba mailing list