Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread Simon Goldschmidt
dawilson wrote: > It sounds to me as if you have some serious context and race condition > issues going on here. The Stellaris port of lwIP 1.3.2 is written such > that > you may only call the lwIP raw APIs from within the context of the > Ethernet > interrupt handler or, if using SafeRTOS or Free

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread H.A.
It was quite some time I modified this code and now I had to update it again. You are right, I was wrong! The tcp_write / tcp_output are called from TelnetHandler which is called from lwIPHostTimerHandler. I also think I found my reconnect bug and will test it now. -- View this message in contex

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread dawilson
H.A. wrote: > > As I tried to mention before, only the serial receive routine has > currently the knowledge of when a complete serial message is recevied and > it than uses tcp_write and tcp_output to send out the message. > > Do you mean that I should check if the connection is open in the in

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread Sylvain Rochet
Hi, On Wed, Aug 08, 2012 at 06:29:47AM -0700, H.A. wrote: > > Of course not what? I had at least 3 questions. This is why I quoted only the relevant part. > I do understand that the LWIP stack is not reentrant but the Stellaris code > is using tcp_write and tcp_output from the serial interrup

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread H.A.
Of course not what? I had at least 3 questions. I do understand that the LWIP stack is not reentrant but the Stellaris code is using tcp_write and tcp_output from the serial interrupt and it is even sold a a commercial product. (serial to ethernet module using telnet). So it must work somehow bu

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread Sylvain Rochet
Hi, On Wed, Aug 08, 2012 at 06:14:52AM -0700, H.A. wrote: > > Do you mean that I should check if the connection is open in the interrupt > routine? If open send the message. If not open, open the connection, return > and let the connect callback send the message? Can the connection be closed > be

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread H.A.
As I tried to mention before, only the serial receive routine has currently the knowledge of when a complete serial message is recevied and it than uses tcp_write and tcp_output to send out the message. Do you mean that I should check if the connection is open in the interrupt routine? If open se

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread Simon Goldschmidt
"H.A." wrote: > Connection didn't open and no tcp output, nothing visible in Wireshark. > OK, > the open is a non-blocking command so it might take a "certain" amount of > time for it to open. But it doesn't feel right to sit and wait for the > connection to open inside an interrrupt routine. Cre

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-08 Thread H.A.
Connection didn't open and no tcp output, nothing visible in Wireshark. OK, the open is a non-blocking command so it might take a "certain" amount of time for it to open. But it doesn't feel right to sit and wait for the connection to open inside an interrrupt routine. Any ideas? Kieran Mansley

Re: [lwip-users] Re opening LWIP for new HTTP message

2012-08-07 Thread Kieran Mansley
On 7 Aug 2012, at 12:00, H.A. wrote: > Have tried several things like opening a new connection inside the serial > receive routine instead from the error callback. Didn’t work. What is the > best way to solve this. Opening the connection from somewhere else? How? What didn't work when you tried

[lwip-users] Re opening LWIP for new HTTP message

2012-08-07 Thread H.A.
I am using LWIP 1.3.2 and software based on the Stellaris ser2enet (Cortex M3) example. It runs a web server for configuration plus a simple http client based on the telnet client. All dedicated telnet processing has been removed so it is basically using raw data. Data comes in on a serial port a