lwip-users
[Top][All Lists]
Advanced

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

RE: [lwip-users] Struct packing/alignment problems


From: Mountifield, Tony
Subject: RE: [lwip-users] Struct packing/alignment problems
Date: Wed, 28 Apr 2004 09:07:59 +0100

Leon,

Thanks for your reply:

> Mountifield, Tony wrote:
> > OK, I have made a formal patch for this and submitted it to 
> the Bug Tracker on Savannah (bug #8708). I forgot to log in 
> first, so it says it's from "None". Is there any way to 
> recover from that?
> >
> Thanks for that effort.
> 
> I think we should clean up the code to extract the unaligned header 
> fields into the correctly typed temporary variables and use those 
> variables in further protocol code.

That was my previous approach, which was much messier than the patch I just 
submitted.

> The underlying thought is to keep the protocol code clean 
> from solving the alignment issues.

I agree, and this is the point of the approach taken. The alignment problem is 
not to do with IP or TCP, as it doesn't arise when using, say, the SLIP driver.

It is the Ethernet driver that introduces the alignment problems with its 
14-byte header, which is why it appears to me to be more elegant to solve them 
locally to the ethernet and etharp code. It is then not necessary to touch the 
IP or TCP code at all (whereas my previous approach had many modifications to 
them), as they are already 32-bit clean.

> I have applied your patch blindly to the current CVS tree, just to
> make sure it gets developer attention as this is a long standing
> important issue.

Thanks!

Tony


***********************************************************************************
This email, its content and any attachments is PRIVATE AND
CONFIDENTIAL to TANDBERG Television. If received in error please
notify the sender and destroy the original message and attachments.

www.tandbergtv.com
***********************************************************************************





reply via email to

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