Skip to contentSkip to conversation

latest kernel

Unstrung-hackers Alexander Aring 1 participant 1 message May 18, 2015 3 messages not in the archive IEEE 802.15.4

lore
Share & tools
lore

Alexander Aring

author maintainer
#3 lore raw
In reply to a message not in the archive
Quoted 4 lines · Simon Vincent

I have noticed that ARPHRD_6LOWPAN is not defined in glibc yet. Has a patch been sent?
http://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/net/if_arp.h;h=5300dcee0225d12d0bbd0c86d3630966ec19f936;hb=HEAD

You need to update your kernel-headers. Usually you can install kernelheaders with "make headers_install" in your kernel source tree.

When you doing cross compile then all things come more complicated, because you need to define in the buildsystem where the kernel headers location is. (Usually "/usr/include/linux" is used. This is where make headers_install install all headers from kernel src tree "include/uapi").

Then the if_arp header at [0] is used (that's the header from linux kernel), which is up-to-date then. Your link above in glibc linux if_arp is I suppose a fallback handling when kernel headers are not found and yes they seems to be old but I also don't think that you these headers have some 1:1 mapping, because the comment of "Based on the 4.4BSD and Linux version of this file". You can try to update it, but your real issue is an old version of your kernel headers.

For now if you are sure you have a kernel running which supports this ARPHRD_6LOWPAN, then you can add a:

#ifndef ARPHRD_6LOWPAN
#define ARPHRD_6LOWPAN 825
#endif

This should work, but is a little hack.

- Alex

[0] http://lxr.free-electrons.com/source/include/uapi/linux/if_arp.h#L97