LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined
@ 2007-01-18 21:22 Andrew Walrond
  2007-01-18 21:51 ` chas williams - CONTRACTOR
  2007-01-19 14:37 ` Adrian Bunk
  0 siblings, 2 replies; 3+ messages in thread
From: Andrew Walrond @ 2007-01-18 21:22 UTC (permalink / raw)
  To: LKML

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?

Andrew Walrond

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined 
  2007-01-18 21:22 Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined Andrew Walrond
@ 2007-01-18 21:51 ` chas williams - CONTRACTOR
  2007-01-19 14:37 ` Adrian Bunk
  1 sibling, 0 replies; 3+ messages in thread
From: chas williams - CONTRACTOR @ 2007-01-18 21:51 UTC (permalink / raw)
  To: Andrew Walrond; +Cc: LKML

it might be that the userspace code shouldnt be including if_arp.h.
can you try that instead?

In message <45AFE52C.30308@walrond.org>,Andrew Walrond writes:
>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?
>
>Andrew Walrond

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined
  2007-01-18 21:22 Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined Andrew Walrond
  2007-01-18 21:51 ` chas williams - CONTRACTOR
@ 2007-01-19 14:37 ` Adrian Bunk
  1 sibling, 0 replies; 3+ messages in thread
From: Adrian Bunk @ 2007-01-19 14:37 UTC (permalink / raw)
  To: Andrew Walrond; +Cc: LKML, Al Viro, David S. Miller, netdev, David Woodhouse

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-01-19 14:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-01-18 21:22 Kernel headers - linux-atm userspace build broken by recent change; __be16 undefined Andrew Walrond
2007-01-18 21:51 ` chas williams - CONTRACTOR
2007-01-19 14:37 ` Adrian Bunk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).