Xun Chen | 25 May 21:01 2016

What is the recommended steps to upgrade to 2.0.0?

Hi there,

I am using 1.4.1 and would like to give 2.0.0(beta) a try, I thought I 
could just keep the port and application files and simply replace the 
whole folder of 1.4.1 with 2.0.0, but then I realized there are files 
added/renamed, for example, in src\core\ipv4 subfolder

1.4.1 package has these file that are missing in 2.0.0 package
inet.c
inet_chksum.c
ip.c
ip_addr.c

while 2.0.0 has the following that may be renamed from 1.4.1
ip4.c
ip4_addr.c

I assume all the main APIs can be found in these two packages, but they 
are in different files, unfortunately, the (TiVa) example I started 
project with refers them via abstract lwiplib.c  thru hard coding.

I assume I need to rewrite lwiplib.c to point to the new files in 2.0.0, 
but is it possible for the lwip gurus to keep the file names in the 
future so that the users can simply replace the old folder with the new one?

Thanks for your attention!

Chen
amogha shanbhag | 25 May 15:27 2016
Picon

How to maintain TCP/UDP/IPv4 code quality

Dear All,

wanted to know how we can maintain the quality parameter for Net stacks ?

As i learn, For IPv6, there is TAHI test suit (http://www.tahi.org/conformance/) which will give us the quality of IPv6 stack( It has around 380 test cases to cover almost everything). 

But for the other modules such as TCP, IPv4, UDP etc I am unable to find any test suit which will verify the functionality.

Can you please let us know if you know how we can maintain the quality attributes of TCP, UDP, IPv4 ?

If we have any tool which will take care of it, We are always sure that quality/functionality of the Net stack is not broken with some latest changes.


Please guide us here.


Thanks 

-AD

_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
Laurent BIERGE | 23 May 15:06 2016
Picon

Documentaton - Doxygen

Hi all,

I've just download the 2.0.0 version and it's my first experience with LWIP.
I've noticed the 1.3.0 documentation, but i saw that a lot of file weren't in the documentation generated by Doxygen.
I tried to generate new documentation with the 2.0.0 version but it didn't work well. (the .doxyfile didn't
seem update since 1.3.0)

So, do you know if there is a .doxyfile for this 2.0.0 version ?
Or is there another way to generate good documentation ?

Regards.
Erkan Ersoy | 22 May 20:59 2016
Picon

netconn http server memory problem ?

Hello

I recently managed to compile and run lwip+FreeRTOS on stm32f107. I can ping my device now.

I took st example netconn httpserver and put in my project it compiled. But i cant reach http page. Connection keep resetting (wireshark show it yellow highlight). I tracked down my problem


accept_function in api_msg.c calls netconn_alloc newconn equals NULL
in netcon_alloc
  if (sys_mbox_new(&conn->recvmbox, size) != ERR_OK) {
    sys_sem_free(&conn->op_completed);
    goto free_and_return;
  }

sys_mbox_new doesnt equal ERR_OK
in sys_mbox_new *pxMailBox = xQueueCreate( iSize, sizeof( void * ) );  returns NULL

it seems like memory problem so I make adjusments and make
 #define configTOTAL_HEAP_SIZE ((size_t) (32 * 1024))        in FreeRTOS_config.h
and

#define MEM_SIZE                (10*1024)         in lwipopts.h

I played with values hoping to make it right but no luck


I tried heap_1.c throgh heap_4.c  didnt work (accept heap_3.c but after connection all my threads stopped)

I think problem is somewhere else but couldn't figure out.

Thank you




_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
thiyagu1989 | 20 May 15:52 2016
Picon

Need help to develop Interface file

Hello all,

              I had gone through some of the sample applications(Ping ,echo
) in contirb folder and executed them on Linux machine using tap interface.
My next step would be porting the interface for renesas drivers so that I
can run the sample application on my renesas board .Here my doubt was how to
modify the existing interface file for my need ? In the given examples 

netif_add(&netif, &ipaddr, &netmask, &gw, NULL, mintapif_init,
ethernet_input);  

The above function initiates the mintapif interface .is it enough to call
all the necessary functions which mentioned in my renesas user manual to
initiate the ethernet controller or do i need to handle some thing else ??

It will be helpful if someone shares interface file for porting lwip to
renesas .

Thanks in Advance.

--
View this message in context: http://lwip.100.n7.nabble.com/Need-help-to-develop-Interface-file-tp26375.html
Sent from the lwip-users mailing list archive at Nabble.com.
Greg Smith | 18 May 18:23 2016

PPP as Server Disconnect/Reconnect Problem Under 2.0.0 Beta1

Hi, all.

I am running my target in PPP(oS) Server Mode with lwIP version 2.0.0 Beta1.  When the other peer disconnects (by sending an LCP TermReq packet), an LCP TermAck is sent which allows the peer to disconnect gracefully.  However, instead of then immediately closing the connection, lwIP waits to time out and then sets its error code to PPPERR_CONNECT.  While the timeout may be by design, I would expect the error code to be set to PPPERR_USER.  But I'm not clear if PPPERR_USER is only for cases where my own application ends the connection or not.  Can someone clarify this?

 

Additionally, and this is the important part, I want to resume listening for a new connection.  So I call pppapi_listen() again at the end of my link status callback function (which happens to look a lot like Sylvain's example in ppp.txt :-)  ). 

 

pppapi_listen() eventually gets as far as sys_arch_sem_wait(TCPIP_MSG_VAR_REF(msg).msg.api_call.sem, 0); in tcpip_api_call() (in tcpip.c) and then waits indefinitely for that semaphore. 

Is this a bug?  Or is there another call(s) I need to make first?  I'd prefer to not have to completely kill/free the existing PPP PCB to continue to listen for the next connection request.

 

Thank you for your help.

-- G

 



This email has been scanned for email related threats and delivered safely by Mimecast.
For more information please visit http://www.mimecast.com
_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
Greg Smith | 18 May 17:20 2016

Ping Causing "not enough space for new header size" Over PPP

Hello.

Using lwIP 2.0.0 Beta1, I have been able to connect my target via PPP to an embedded Linux control.  After successful connection, I am trying to ping the lwIP target.  It has about 25-33% packet loss over time.  From the debug output, I see that I'm occasionally getting a "(not enough space for new header size)" message from pbuf_header_impl() in pbuf.c.

 

I don't really understand what that's trying to tell me since I'm only receiving about 90 bytes from the ping packet, but I think I have my pbuf size set well above that.  (I've tried setting PBUF_POOL_BUFSIZE to 500, 600, 1500, and 1520).  

But I do see why it causes packets to get dropped.  So I have fiddled with various PBUF, UDP, and MRU/MTU options to no avail.  Can someone please help me understand how to troubleshoot this message and/or what options to try? 

Is this really a RAM issue?  Is it a timing/task priority issue?  Or is it my serial driver not buffering the data properly?

(I'm running on an STM32F2 part under FreeRTOS 8.2.3.)

 

Thank you.

 

==== Debug Output Snip ====

pppos_input[0]: got 89 bytes

pbuf_alloc(length=0)

pbuf_alloc: allocated pbuf 0x200150a4

pbuf_alloc(length=0) == 0x200150a4

pbuf_header: old 0x200150b4 new 0x200150b6 (-2)

ppp_input[0]: ip in pbuf len=84

pbuf_header: old 0x200150b6 new 0x200150ca (-20)

pbuf_header: failed as 0x200150a8 < 0x200150b4 (not enough space for new header size)

pbuf_alloc(length=84)

pbuf_alloc(length=84) == 0x20015874

pbuf_header: old 0x20015894 new 0x200158a8 (-20)

pbuf_copy(0x20015874, 0x200150a4)

pbuf_copy: end of chain reached.

pbuf_free(0x200150a4)

pbuf_free: deallocating 0x200150a4

pbuf_header: old 0x200158a8 new 0x20015894 (20)

pbuf_alloc(length=0)

pbuf_alloc: allocated pbuf 0x200150a4

pbuf_alloc(length=0) == 0x200150a4

pbuf_free(0x200150a4)

pbuf_free: deallocating 0x200150a4

pppos_netif_output[0]: proto=0x21, len = 84

pbuf_free(0x20015874)

pbuf_free: deallocating 0x20015874

pppos_input[0]: got 56 bytes

pbuf_alloc(length=0)

pbuf_alloc: allocated pbuf 0x200150a4

pbuf_alloc(length=0) == 0x200150a4

pppos_input[0]: got 33 bytes

pbuf_header: old 0x200150b4 new 0x200150b6 (-2)

ppp_input[0]: ip in pbuf len=84

pbuf_header: old 0x200150b6 new 0x200150ca (-20)

pbuf_header: failed as 0x200150a8 < 0x200150b4 (not enough space for new header size)

pbuf_alloc(length=84)

pbuf_alloc(length=84) == 0x20015874

pbuf_header: old 0x20015894 new 0x200158a8 (-20)

pbuf_copy(0x20015874, 0x200150a4)

pbuf_copy: end of chain reached.

 

-- G

 



This email has been scanned for email related threats and delivered safely by Mimecast.
For more information please visit http://www.mimecast.com
_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
Sylvain Rochet | 13 May 12:19 2016
Picon

Re: netif_default issue with 2.0.0-beta1

Hi Andy,

On Fri, May 13, 2016 at 11:09:46AM +0100, Andy Pont wrote:
> Hello,
> 
> I have switched the network code I was using to the 2.0.0-beta1 release that
> we were notified about earlier in the week and my previously working
> application code is now throwing an error.
> 
> (...)
> 
> With the previous version pulled from git (latest CHANGELOG entry is
> 2015-10-09) it all worked OK.  With 2.0.0-beta1 it shows the error saying
> there is no network stack.  If I take the check out then the DHCP request
> works OK as does the other stuff we do with the stack.
> 
> Is there something broken or I have I missed something?

First, could you git bisect, bad HEAD, good 
02bddd251a571dbc0efd310f29bb1d3aa004afb3 (~ Fri Oct 9 2015) to find the 
offending commit ?

Sylvain
_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
Erkan Ersoy | 15 May 17:27 2016
Picon

stm32f107 lwip freeRTOS compile problem

I am trying to compile lwip and freeRTOS for sometime now.
FreeRTOS 8.2.3
Lwip 1.4.1
I am not using HAL drivers.


I gathered files from examples
sys_arch  is from stm32cube examples
stm32_eth  driver is from an example i found on github made for iar

yet so far i came to last linker problem (i am afraid if i solve that new ones will appear)


 undefined reference to `sys_timeouts_init'

I left out timers.c and timers.h which are part of lwip  from compiling.
ı am not sure about how will i set timers in that setup.


(I am using coocox)
(Any example)


_______________________________________________
lwip-users mailing list
lwip-users@...
https://lists.nongnu.org/mailman/listinfo/lwip-users
caoshan278251191 | 12 May 19:18 2016
Picon

TCP Raw communication between Raspberry pi and TI TM4C

I am trying to develop a project over TM4C Iot launchpad, so I want to
running a client on the Rpi so I can do some test.

Right now the code can compile on linux, but it did not works, it did not
communicate with the lwip running on the Tm4c launchpad, for the launchpad
side, I could use the browser to read the simple website out from it. so the
server side is ok.

I was wondering, I only init lwip with the lwip_init() function. I am trying
to use the linux ethernet driver to acquire the IP, and use the raw tcp
function to collect the data send by the TM4C launchpad. just like the
regular socket programming did.

so my question is 

1. Do I need any other functions so that I could init the lwip which could
enable raw tcp connection.

2. right now the tcp_bind() could bind to any ip without an error, even the
ip is not belonging to the linux system. (I have enable the Debug, all the
pcb is empty.)  which part could be wrong? any hints?

Shan

main.c <http://lwip.100.n7.nabble.com/file/n26335/main.c>  

--
View this message in context: http://lwip.100.n7.nabble.com/TCP-Raw-communication-between-Raspberry-pi-and-TI-TM4C-tp26335.html
Sent from the lwip-users mailing list archive at Nabble.com.
Andy Pont | 13 May 12:09 2016

netif_default issue with 2.0.0-beta1

Hello,

I have switched the network code I was using to the 2.0.0-beta1 release that
we were notified about earlier in the week and my previously working
application code is now throwing an error.

The initialisation of the stack is as follows:

	netif_add(&lwipnetif, &ipaddr, &netmask, &gateway,
				&pciinfo, pcieth_init, ethernet_input);
	netif_set_default(&lwipnetif);
	netif_set_up(&lwipnetif);
	
	if (netif_default->flags & NETIF_FLAG_LINK_UP)
	{
		dhcp_set_struct(&lwipnetif, &lwipnetif_dhcp);
		dhcp_start(&lwipnetif);

		...
	}
	else
	{
		// Output an error saying we have no network stack.
	}

Within the pcieth_init function the flags are set as follows:

	// Set the interface flags.
	netif->flags = NETIF_FLAG_BROADCAST | NETIF_FLAG_ETHARP |
NETIF_FLAG_LINK_UP;

With the previous version pulled from git (latest CHANGELOG entry is
2015-10-09) it all worked OK.  With 2.0.0-beta1 it shows the error saying
there is no network stack.  If I take the check out then the DHCP request
works OK as does the other stuff we do with the stack.

Is there something broken or I have I missed something?

Andy.

Gmane