tech-kern archive

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

Re: "Wire" definitions and __packed



On Wednesday 05 October 2016 17:10:28 Eduardo Horvath wrote:
> On Wed, 5 Oct 2016, Roy Marples wrote:
> > On 04/10/2016 23:06, Joerg Sonnenberger wrote:
> > > I'd like to addressing this by cutting down on the first set. For this
> > > purpose, I want to replace many of the __packed attributes in the
> > > current network headers with CTASSERT of the proper size, especially for
> > > those structs that are clearly not wire definitions by themselve.
> > 
> > I tested the following structs without packed with the latest dhcpcd
> > trunk (not yet in NetBSD).
> > 
> > ip
> > udphdr
> > arphdr
> > in_addr
> > nd_router_advert
> > nd_opt_hdr
> > nd_opt_prefix_info
> > nd_opt_mtu
> > nd_opt_rdnss
> > nd_opt_dnssl
> > 
> > Works fine so far.
> 
> What platforms did you test it on?
> 
> I recommend trying it on sparc64.  That's one of the worst cases, being
> big-endian 64-bit with alignment constraints.  And I recall some ABI (was
> it ARM?) has strange alignment restrictions on byte values.

i386/amd64 only right now.
I'll test on mips64-eb tomorrow.
Sadly my sparc64 is dead, the network card reports an unspecified hardware 
address.

Roy


Home | Main Index | Thread Index | Old Index