Salut Frédéric, > >3. The old version I'm currently using is stable with the socket API. > >But I needed of lot of basic features which were not implemented > >(MSG_PEEK, receive time-out) Unfortunately, the corresponding macros > >are defined, letting the user think they are implemented !!! > > I think it's normal for "options": like this, you got source > code compatibility, and using these options should return > ENOPROTOOPT. About flags like MSG_PEEK, you're right.
My PoV is that it should not compile. This may be a bit extremist, and this opinion is likely to be highly unpopular here ;-) Maybe get/setsockopt() should issue a warning using LWIP_DEBUGF() ? (not compiled in release-build, of course) > >4. I have a big problem for handling TCP connection loss. > >When I unplug my device, or shut-down the peer, no error is reported > >and I can't know the connection is lost. > >Is this bug corrected ? > > Simon is right, the problem is mainly the default lwIP > values. To reduce that, you can reduce your > TCP_SLOW_INTERVAL, and reduce TCP_MAXRTX. It's a kind of > "send timeout", but global, and not "per socket". Sorry, I was not clear. I meant loss of IDLE connections. IIRC, when testing LwIP with a TCP echo application, (server on my platform, and Windows XP telnet client) I noticed that the telnet client reports a connection loss very fast (when unplugging my PC or shutting down my device), but the contrary was not true. So I though that TCP had a keep-alive system, but that there was a bug in my old LwIP. After googling around, I found out that this mechanism exists, but default UNIX time-out is 2 hours, 8 retries at 75 seconds interval !!! TCP_KEEPALIVE (activated by default) TCP_KEEPIDLE, TCP_KEEPINTVL, TCP_KEEPCNT are meant to control this. and I'm happy to see they are implemented. But I can't use them right now on my old Analog-Device version. So I guess I'll definitely have to port 1.3.0. > >5. About 1.3.0 required features: > >-> backlog for listening sockets. > >I think this is a very basic feature, > >and I actually accidentally learned it was not implemented > in this list ! > > We have talk about that in > http://savannah.nongnu.org/task/?7421 (task #7421 > : Implement SO_RCVBUF) Yes, I've read you wanted to have it in 1.3.0, and I agree with you, it's a must-have. What about TCP_KEEPINIT and/or SO_CONTIMEO I've also read that you wanted to write a new socket layer which would not rely on netconn. What is the status of this ? on the 1.4.0 roadmap ? What about implementing shutdown() and poll() ? Best regards. -- Stéphane Lesage ATEIS International _______________________________________________ lwip-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/lwip-users
