[En-Nut-Discussion] Freeing NETBUFs on error

Harald Kipp harald.kipp at egnite.de
Wed Feb 22 16:08:23 CET 2006


At 14:44 22.02.2006 +0100, you wrote:

>Michael Jones wrote:
> > The only thing that has been stopping me and as I guess a few others of
> > changing this is the amount of testing that would follow to ensure that
> > all other modules continue to work - including modules not in the cvs
> > written and maintained privately by others.

Exactly. One option would be to create a separate branch.



>Things *will* get worse if this isn't going to be fixed...

It lives there for more than 5 years. Applications typically
use the socket API and will not notice any difference.
Obviously you are using internals and such applications
will become broken. No idea, how many applications will
suffer. Probably some after such a long time.

In the very early days the stack had a different layout,
derived from Liqourice, which used callbacks instead of
a BSD-like socket API. Running on a slow ATmega103, there
had been a lot of uncertainties if a BSD style interface will
ever work. Any attempt had been made to release memory as soon
as possible. And, as usual, if it works, everybody is scared
to touch it.

Anyway, I agree that it is badly designed.

>Personally i lost a whole week to figure this out. I never supposed
>this may happen.

I'm sorry for this, but it's documented, isn't it?

Harald




More information about the En-Nut-Discussion mailing list