This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: RE : Possible fix for duplicated ARP entries in the FreeBSDstack
- From: Nick Garnett <nickg at ecoscentric dot com>
- To: "Arnaud Chataignier" <achataignier at neotion dot com>
- Cc: "'Gary Thomas'" <gary at mlbassoc dot com>,"'Andrew Lunn'" <andrew at lunn dot ch>,"'Sturle Mastberg'" <sturle dot mastberg at tandberg dot net>,"'eCos Discussion'" <ecos-discuss at ecos dot sourceware dot org>
- Date: 20 Jun 2005 11:26:22 +0100
- Subject: Re: [ECOS] RE : [ECOS] Possible fix for duplicated ARP entries in the FreeBSDstack
- References: <001001c57577$1c629d30$140032be@ArnaudC>
"Arnaud Chataignier" <achataignier@neotion.com> writes:
> Thank you all for the analysis. I was encountering this bug from a long
> time now, and fixing it is great news for me.
>
> One person did post a temporary patch to this problem a long time ago,
> but it didn't seem to really correct the cause of the problem, it was
> just avoiding it :
> http://sourceware.org/ml/ecos-discuss/2004-11/msg00150.html
>
> May anyone post a patch corresponding to this real correction ? As far
> as I understand, it is only a matter of changing the size of the sa_data
> member back to 14 ?
I think the analysis indicates that the sa_data field should not be
changed back to 14, that would break IPv6 support. I suspect the
correct solution is to increase sockaddr_inarp to match sockaddr and
sockaddr_in. However, this code is Gary's baby, so he should have the
last say.
The root cause of this is some rather questionable assumptions in the
BSD stack about equivalence of sizes of various structures. These
probably don't have any effect in BSD since the copying between user
and kernel space masks problem.
--
Nick Garnett eCos Kernel Architect
http://www.ecoscentric.com The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss