I suppose it depends what version of Linux you're running on your sbRIO. Not all are necessarily IPv6 enabled (or capable) out of the box.
For sure, just grabbing random header files from other platforms will lead you nowhere.
Try this command
Code:
$ grep -r AF_INET6 /usr/include
/usr/include/glib-2.0/gio/gioenums.h: * identical to the system defines %AF_INET, %AF_INET6 and %AF_UNIX,
/usr/include/glib-2.0/gio/gioenums.h: G_SOCKET_FAMILY_IPV6 = GLIB_SYSDEF_AF_INET6
/usr/include/x86_64-linux-gnu/bits/socket.h:#define AF_INET6 PF_INET6
/usr/include/valgrind/vki/vki-linux.h:#define VKI_AF_INET6 10 /* IP version 6 */
/usr/include/valgrind/vki/vki-linux.h: unsigned short int sin6_family; /* AF_INET6 */
/usr/include/valgrind/vki/vki-solaris.h:#define VKI_AF_INET6 AF_INET6
/usr/include/valgrind/vki/vki-darwin.h:#define VKI_AF_INET6 AF_INET6
/usr/include/linux/l2tp.h: __kernel_sa_family_t l2tp_family; /* AF_INET6 */
/usr/include/linux/in6.h: * Types and definitions for AF_INET6
/usr/include/linux/in6.h: unsigned short int sin6_family; /* AF_INET6 */
/usr/include/linux/if_link.h: * [AF_INET6] = {
<<snipped voluminous output >>
If you don't see anything like this, then you need a different distro on your target.
Or this program.
Code:
$ cat foo.c
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
int main()
{
printf("AF_INET6=%d\n", AF_INET6 );
return 0;
}
$ ./a.out
AF_INET6=10
If it doesn't compile, you're stuck.