lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] LwIP 1.41 select does not return ?


From: Arpit Agarwal
Subject: Re: [lwip-users] LwIP 1.41 select does not return ?
Date: Wed, 31 May 2017 11:30:33 +0000

Hi Noam,

I think lwip_select is not the problem. I have used it previously and it used to works with lwip 1.4.1 version.

However as per your saying that select gets timeout, I would recommend you to debug event_callback API

and verify if the socket descriptor you used in select has received the event_calback properly or not.
If there is no event_callback cming for the particular socket descriptor then select will not return and it eventually timeouts.

 

Thanks,

Arpit



-- 
Thanks & Regards,
ARPIT AGARWAL
Alumni, Department Of CSE
IIT Guwahati-781039 (INDIA)
M: (+91)-8792793063
E: address@hidden
    address@hidden

-----------------------------------------------------------------------------------------
“ The greater part of progress is the desire to progress. ” — Seneca




From: lwip-users <lwip-users-bounces+address@hidden> on behalf of Noam Weissman <address@hidden>
Sent: Wednesday, May 31, 2017 4:49 PM
To: Tim Cussins; Mailing list for lwIP users
Subject: Re: [lwip-users] LwIP 1.41 select does not return ?
 

Hi Tim,


I am aware of that but that did not answer my question.


You can mix API's and I already have systems that use RAW API

and Socket API and they coexists when you know the limitations.


My question was simple ... does anyone have an idea why select

does not return when a connection to the correct port is initiated.


Just to clarify the last 3 parameter to select function are all NULL.

When I set the last parameter to a time struct (for testing) and defined

5 seconds timeout, select did return every 5 seconds with 0...


It should be something that I overlooked or maybe that lwip_select is not

100% BSD compliant as CypherBridge code is ?



Thanks and BR,

Noam.




From: Tim Cussins <address@hidden>
Sent: Wednesday, May 31, 2017 1:57 PM
To: Noam Weissman; Mailing list for lwIP users
Subject: Re: [lwip-users] LwIP 1.41 select does not return ?
 
Hi Noam,

On Wed, May 31, 2017, at 11:11 AM, Noam Weissman wrote:

> I am using a base project that is used for testing. This base project
> uses FreeRTOS 8.01 + LwIP 1.41
> +  a few modules that work just fine. The base project has a DHCP client
> and a TCP server (Raw API)
> that work just fine.
>
>
> I have enabled sockets and netcon in lwipopts.h ... in general it seems
> to load properly and run.

> My own TCP server that listens on port 23 and the rest of the system
> works just fine
>
>
> Any ideas what did I miss or what should I check ?
>

Just a quick check: The raw API is not meant to be used in a
multi-threaded system. Is your working TCP server using this API? If so,
I expect your TCP server would work, but your calls to the netconn API
(or sockets, which uses netconn under the hood) would probably dead-end
in the way you're seeing.

Have a look at the first couple of paragraphs here:

http://lwip.wikia.com/wiki/Netconn_API
lwip.wikia.com
The netconn API is a sequential API designed to make the stack easier to use (compared to the event-driven raw API) while still preserving zero-copy functionality.


HTH,
Tim

reply via email to

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