lwip-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-devel] [bug #34172] Send and Non blobking socket : send is not com


From: SandrineLWI1565
Subject: [lwip-devel] [bug #34172] Send and Non blobking socket : send is not complete
Date: Tue, 30 Aug 2011 10:35:08 +0000
User-agent: Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0

URL:
  <http://savannah.nongnu.org/bugs/?34172>

                 Summary: Send and Non blobking socket : send is not complete
                 Project: lwIP - A Lightweight TCP/IP stack
            Submitted by: nexvisionuser245
            Submitted on: mar. 30 août 2011 12:35:06 CEST
                Category: sockets
                Severity: 3 - Normal
              Item Group: Faulty Behaviour
                  Status: None
                 Privacy: Private
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
         Planned Release: 
            lwIP version: 1.4.0

    _______________________________________________________

Details:

Hello All,

I use lwip-1.4.0. I need using non-blocking socket. So I have applied patch
done at 2011-07-22 20:05:24 on the Git master branch. I have only done changes
described in this commit on the 1.4.0 release version.

I call lwip_send(1, data=0x2000c030, size=2050, flags=0x0) on a socket alreay
in non blocking mode (no need using MSG_DONTWAIT flag).

Unfortunally, it fails with logs

lwip_send(1, data=0x2000c030, size=2050, flags=0x0)
tcp_write(pcb=0x20001810, data=0x2000c030, len=1072, apiflags=1)
tcp_write: queuelen: 0
tcp_write: queueing 6511:7047
tcp_write: queueing 7047:7583
tcp_write: 2 (after enqueued)
tcp_output_segment: 6511:7047
lwip_send(1) err=0 written=1072
lwip_send(1, data=0x2000c460, size=978, flags=0x0)
do_writemore: No more tcp_sndbuf available
lwip_send(1) err=-7 written=0

where "do_writemore: No more tcp_sndbuf available" is a log in code 

do_writemore(struct netconn *conn)
{
....
 available = tcp_sndbuf(conn->pcb.tcp);
  if (available < len) {
    /* don't try to write more than sendbuf */
    len = available;
    if (dontblock){
        if (!len) {
            LWIP_DEBUGF(SOCKETS_DEBUG, ("do_writemore: No more tcp_sndbuf
availablen"));
            err = ERR_WOULDBLOCK;
            goto err_mem;
            }
    } else {
.......


Do you think the patch is correct on version 1.4.0 or do I need the GIT master
version? Do I have a problem with my buffers's size in opt.h?

Best Regards

Sandrine




    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/bugs/?34172>

_______________________________________________
  Message posté via/par Savannah
  http://savannah.nongnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]