On Thu, Jan 18, 2007 at 09:22:52PM +0000, Andrew Walrond wrote: > Don't know exactly when this change went in, but it's not in 2.6.18.3 > and is in 2.6.19.2+ > > $ diff linux/include/linux/if_arp.h linux-2.6/include/linux/if_arp.h > 133,134c133,134 > < unsigned short ar_hrd; /* format of hardware address */ > < unsigned short ar_pro; /* format of protocol address */ > --- > > __be16 ar_hrd; /* format of hardware address */ > > __be16 ar_pro; /* format of protocol address */ > 137c137 > < unsigned short ar_op; /* ARP opcode (command) */ > --- > > __be16 ar_op; /* ARP opcode (command) */ > > > This causes the linux-atm userspace compile to fail like this: > > In file included from arp.c:19: > /usr/include/linux/if_arp.h:133: error: expected > specifier-qualifier-list before '__be16' > > I guess if_arp.h needs to include include/linux/byteorder/big_endian.h?
No, linux/types.h But what bothers me more about if_arp.h is that it is one of the headers using "struct sockaddr" in userspace, but as far as I can see we aren't exporting it in any header. This seems to work since glibc is providing the struct, but this looks a bit fishy. > Andrew Walrond cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html