lwip-devel
[Top][All Lists]
Advanced

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

[lwip-devel] Question about some bigger changes in LwIP


From: Jan Breuer
Subject: [lwip-devel] Question about some bigger changes in LwIP
Date: Sun, 12 Jun 2016 21:11:28 +0200

Hello,

I'm working with LwIP few years and last year trying to understand and implement IPv6 in to our product. It works well with current GIT head but after learning more about IPv6, I have found some parts in the LwIP core done "naively" or so much simple.

There are at least these problems.

1) IPv6 address/prefix auto/configuration and routing is not implemented according to RFC. I have investigate it little bit and also compare the source with uIP in contiki... and they are doing it right! So please don't tell me that we are "light weight", because much more "light weight" stack is doing it right.
Implementation in LwIP is not bad, but naive so it just works in many cases.

2) Nameserver configuration is simple and don't allow to implement more features in the future. In IPv4 only configuration, situation is simple. DNS can be configured manually or by DHCPv4. In dual-stack mode, there are few more sources and they have more features. So we have manual configuration, DHCPv4, RDNSS option in RA, DHCPv6 in the future. Everything overwrites everything. In some RFCs, there are advice to have a list and replace oldest entry by the newest one. There are also some lifetimes of entries etc. This is not possible to solve without bigger change to dns.c. Unexpectedly, uIP is also doing this right.

3) There is unfortunate prototype of dns_getserver returning value instead of constant pointer. For IPv4, it didn't mind. For IPv6/IPv4 it is big variable. It is also not possible to do oneliner like ipaddr_ntoa(dns_getserver(0)). This is very practical and easy change but it changes API.

These changes are so huge so they don't fit to v2.0-RC1. These changes are also not so critical so current version just work in majority of situations. I'm not an expert in IPv6 field, but with aid of RFC's and nonzero knowledge I can propose some changes/patches.

So I have these questions:
Did you know about this?
Are you interested to implement proposed changes?
When to implement these changes? Postpone v2.0 and fix this or stabilise and release v2.0 and implement these changes right after releasing v2.0.

Best regards,
Jan Breuer




reply via email to

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