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

Reply via email to