Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-or-later */
0002 /*
0003  *  Types and definitions for AF_INET6 
0004  *  Linux INET6 implementation 
0005  *
0006  *  Authors:
0007  *  Pedro Roque     <roque@di.fc.ul.pt> 
0008  *
0009  *  Sources:
0010  *  IPv6 Program Interfaces for BSD Systems
0011  *      <draft-ietf-ipngwg-bsd-api-05.txt>
0012  *
0013  *  Advanced Sockets API for IPv6
0014  *  <draft-stevens-advanced-api-00.txt>
0015  */
0016 #ifndef _LINUX_IN6_H
0017 #define _LINUX_IN6_H
0018 
0019 #include <uapi/linux/in6.h>
0020 
0021 /* IPv6 Wildcard Address (::) and Loopback Address (::1) defined in RFC2553
0022  * NOTE: Be aware the IN6ADDR_* constants and in6addr_* externals are defined
0023  * in network byte order, not in host byte order as are the IPv4 equivalents
0024  */
0025 extern const struct in6_addr in6addr_any;
0026 #define IN6ADDR_ANY_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } }
0027 extern const struct in6_addr in6addr_loopback;
0028 #define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
0029 extern const struct in6_addr in6addr_linklocal_allnodes;
0030 #define IN6ADDR_LINKLOCAL_ALLNODES_INIT \
0031         { { { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
0032 extern const struct in6_addr in6addr_linklocal_allrouters;
0033 #define IN6ADDR_LINKLOCAL_ALLROUTERS_INIT \
0034         { { { 0xff,2,0,0,0,0,0,0,0,0,0,0,0,0,0,2 } } }
0035 extern const struct in6_addr in6addr_interfacelocal_allnodes;
0036 #define IN6ADDR_INTERFACELOCAL_ALLNODES_INIT \
0037         { { { 0xff,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }
0038 extern const struct in6_addr in6addr_interfacelocal_allrouters;
0039 #define IN6ADDR_INTERFACELOCAL_ALLROUTERS_INIT \
0040         { { { 0xff,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2 } } }
0041 extern const struct in6_addr in6addr_sitelocal_allrouters;
0042 #define IN6ADDR_SITELOCAL_ALLROUTERS_INIT \
0043         { { { 0xff,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2 } } }
0044 #endif