/* Copyright (C) 1991-2018 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ /* Linux version. */ #ifndef _NETINET_IN_H # error "Never use <bits/in.h> directly; include <netinet/in.h> instead." #endif /* If the application has already included linux/in6.h from a linux-based kernel then we will not define the IPv6 IPPROTO_* defines, in6_addr (nor the defines), sockaddr_in6, or ipv6_mreq. Same for in6_ptkinfo or ip6_mtuinfo in linux/ipv6.h. The ABI used by the linux-kernel and glibc match exactly. Neither the linux kernel nor glibc should break this ABI without coordination. In upstream kernel 56c176c9 the _UAPI prefix was stripped so we need to check for _LINUX_IN6_H and _IPV6_H now, and keep checking the old versions for maximum backwards compatibility. */ #if defined _UAPI_LINUX_IN6_H \ || defined _UAPI_IPV6_H \ || defined _LINUX_IN6_H \ || defined _IPV6_H /* This is not quite the same API since the kernel always defines s6_addr16 and s6_addr32. This is not a violation of POSIX since POSIX says "at least the following member" and that holds true. */ # define __USE_KERNEL_IPV6_DEFS 1 #else # define __USE_KERNEL_IPV6_DEFS 0 #endif /* Options for use with `getsockopt' and `setsockopt' at the IP level. The first word in the comment at the right is the data type used; "bool" means a boolean value stored in an `int'. */ #define IP_OPTIONS 4 /* ip_opts; IP per-packet options. */ #define IP_HDRINCL 3 /* int; Header is included with data. */ #define IP_TOS 1 /* int; IP type of service and precedence. */ #define IP_TTL 2 /* int; IP time to live. */ #define IP_RECVOPTS 6 /* bool; Receive all IP options w/datagram. */ /* For BSD compatibility. */ #define IP_RECVRETOPTS IP_RETOPTS /* bool; Receive IP options for response. */ #define IP_RETOPTS 7 /* ip_opts; Set/get IP per-packet options. */ #define IP_MULTICAST_IF 32 /* in_addr; set/get IP multicast i/f */ #define IP_MULTICAST_TTL 33 /* unsigned char; set/get IP multicast ttl */ #define IP_MULTICAST_LOOP 34 /* bool; set/get IP multicast loopback */ #define IP_ADD_MEMBERSHIP 35 /* ip_mreq; add an IP group membership */ #define IP_DROP_MEMBERSHIP 36 /* ip_mreq; drop an IP group membership */ #define IP_UNBLOCK_SOURCE 37 /* ip_mreq_source: unblock data from source */ #define IP_BLOCK_SOURCE 38 /* ip_mreq_source: block data from source */ #define IP_ADD_SOURCE_MEMBERSHIP 39 /* ip_mreq_source: join source group */ #define IP_DROP_SOURCE_MEMBERSHIP 40 /* ip_mreq_source: leave source group */ #define IP_MSFILTER 41 #ifdef __USE_MISC # define MCAST_JOIN_GROUP 42 /* group_req: join any-source group */ # define MCAST_BLOCK_SOURCE 43 /* group_source_req: block from given group */ # define MCAST_UNBLOCK_SOURCE 44 /* group_source_req: unblock from given group*/ # define MCAST_LEAVE_GROUP 45 /* group_req: leave any-source group */ # define MCAST_JOIN_SOURCE_GROUP 46 /* group_source_req: join source-spec gr */ # define MCAST_LEAVE_SOURCE_GROUP 47 /* group_source_req: leave source-spec gr*/ # define MCAST_MSFILTER 48 # define IP_MULTICAST_ALL 49 # define IP_UNICAST_IF 50 # define MCAST_EXCLUDE 0 # define MCAST_INCLUDE 1 #endif #define IP_ROUTER_ALERT 5 /* bool */ #define IP_PKTINFO 8 /* bool */ #define IP_PKTOPTIONS 9 #define IP_PMTUDISC 10 /* obsolete name? */ #define IP_MTU_DISCOVER 10 /* int; see below */ #define IP_RECVERR 11 /* bool */ #define IP_RECVTTL 12 /* bool */ #define IP_RECVTOS 13 /* bool */ #define IP_MTU 14 /* int */ #define IP_FREEBIND 15 #define IP_IPSEC_POLICY 16 #define IP_XFRM_POLICY 17 #define IP_PASSSEC 18 #define IP_TRANSPARENT 19 #define IP_MULTICAST_ALL 49 /* bool */ /* TProxy original addresses */ #define IP_ORIGDSTADDR 20 #define IP_RECVORIGDSTADDR IP_ORIGDSTADDR #define IP_MINTTL 21 #define IP_NODEFRAG 22 #define IP_CHECKSUM 23 #define IP_BIND_ADDRESS_NO_PORT 24 #define IP_RECVFRAGSIZE 25 /* IP_MTU_DISCOVER arguments. */ #define IP_PMTUDISC_DONT 0 /* Never send DF frames. */ #define IP_PMTUDISC_WANT 1 /* Use per route hints. */ #define IP_PMTUDISC_DO 2 /* Always DF. */ #define IP_PMTUDISC_PROBE 3 /* Ignore dst pmtu. */ /* Always use interface mtu (ignores dst pmtu) but don't set DF flag. Also incoming ICMP frag_needed notifications will be ignored on this socket to prevent accepting spoofed ones. */ #define IP_PMTUDISC_INTERFACE 4 /* Like IP_PMTUDISC_INTERFACE but allow packets to be fragmented. */ #define IP_PMTUDISC_OMIT 5 #define IP_MULTICAST_IF 32 #define IP_MULTICAST_TTL 33 #define IP_MULTICAST_LOOP 34 #define IP_ADD_MEMBERSHIP 35 #define IP_DROP_MEMBERSHIP 36 #define IP_UNBLOCK_SOURCE 37 #define IP_BLOCK_SOURCE 38 #define IP_ADD_SOURCE_MEMBERSHIP 39 #define IP_DROP_SOURCE_MEMBERSHIP 40 #define IP_MSFILTER 41 #define IP_MULTICAST_ALL 49 #define IP_UNICAST_IF 50 /* To select the IP level. */ #define SOL_IP 0 #define IP_DEFAULT_MULTICAST_TTL 1 #define IP_DEFAULT_MULTICAST_LOOP 1 #define IP_MAX_MEMBERSHIPS 20 #ifdef __USE_MISC /* Structure used to describe IP options for IP_OPTIONS and IP_RETOPTS. The `ip_dst' field is used for the first-hop gateway when using a source route (this gets put into the header proper). */ struct ip_opts { struct in_addr ip_dst; /* First hop; zero without source route. */ char ip_opts[40]; /* Actually variable in size. */ }; /* Like `struct ip_mreq' but including interface specification by index. */ struct ip_mreqn { struct in_addr imr_multiaddr; /* IP multicast address of group */ struct in_addr imr_address; /* local IP address of interface */ int imr_ifindex; /* Interface index */ }; /* Structure used for IP_PKTINFO. */ struct in_pktinfo { int ipi_ifindex; /* Interface index */ struct in_addr ipi_spec_dst; /* Routing destination address */ struct in_addr ipi_addr; /* Header destination address */ }; #endif /* Options for use with `getsockopt' and `setsockopt' at the IPv6 level. The first word in the comment at the right is the data type used; "bool" means a boolean value stored in an `int'. */ #define IPV6_ADDRFORM 1 #define IPV6_2292PKTINFO 2 #define IPV6_2292HOPOPTS 3 #define IPV6_2292DSTOPTS 4 #define IPV6_2292RTHDR 5 #define IPV6_2292PKTOPTIONS 6 #define IPV6_CHECKSUM 7 #define IPV6_2292HOPLIMIT 8 #define SCM_SRCRT IPV6_RXSRCRT #define IPV6_NEXTHOP 9 #define IPV6_AUTHHDR 10 #define IPV6_UNICAST_HOPS 16 #define IPV6_MULTICAST_IF 17 #define IPV6_MULTICAST_HOPS 18 #define IPV6_MULTICAST_LOOP 19 #define IPV6_JOIN_GROUP 20 #define IPV6_LEAVE_GROUP 21 #define IPV6_ROUTER_ALERT 22 #define IPV6_MTU_DISCOVER 23 #define IPV6_MTU 24 #define IPV6_RECVERR 25 #define IPV6_V6ONLY 26 #define IPV6_JOIN_ANYCAST 27 #define IPV6_LEAVE_ANYCAST 28 #define IPV6_IPSEC_POLICY 34 #define IPV6_XFRM_POLICY 35 #define IPV6_HDRINCL 36 /* Advanced API (RFC3542) (1). */ #define IPV6_RECVPKTINFO 49 #define IPV6_PKTINFO 50 #define IPV6_RECVHOPLIMIT 51 #define IPV6_HOPLIMIT 52 #define IPV6_RECVHOPOPTS 53 #define IPV6_HOPOPTS 54 #define IPV6_RTHDRDSTOPTS 55 #define IPV6_RECVRTHDR 56 #define IPV6_RTHDR 57 #define IPV6_RECVDSTOPTS 58 #define IPV6_DSTOPTS 59 #define IPV6_RECVPATHMTU 60 #define IPV6_PATHMTU 61 #define IPV6_DONTFRAG 62 /* Advanced API (RFC3542) (2). */ #define IPV6_RECVTCLASS 66 #define IPV6_TCLASS 67 #define IPV6_AUTOFLOWLABEL 70 /* RFC5014. */ #define IPV6_ADDR_PREFERENCES 72 /* RFC5082. */ #define IPV6_MINHOPCOUNT 73 #define IPV6_ORIGDSTADDR 74 #define IPV6_RECVORIGDSTADDR IPV6_ORIGDSTADDR #define IPV6_TRANSPARENT 75 #define IPV6_UNICAST_IF 76 #define IPV6_RECVFRAGSIZE 77 /* Obsolete synonyms for the above. */ #if !__USE_KERNEL_IPV6_DEFS # define IPV6_ADD_MEMBERSHIP IPV6_JOIN_GROUP # define IPV6_DROP_MEMBERSHIP IPV6_LEAVE_GROUP #endif #define IPV6_RXHOPOPTS IPV6_HOPOPTS #define IPV6_RXDSTOPTS IPV6_DSTOPTS /* IPV6_MTU_DISCOVER values. */ #define IPV6_PMTUDISC_DONT 0 /* Never send DF frames. */ #define IPV6_PMTUDISC_WANT 1 /* Use per route hints. */ #define IPV6_PMTUDISC_DO 2 /* Always DF. */ #define IPV6_PMTUDISC_PROBE 3 /* Ignore dst pmtu. */ #define IPV6_PMTUDISC_INTERFACE 4 /* See IP_PMTUDISC_INTERFACE. */ #define IPV6_PMTUDISC_OMIT 5 /* See IP_PMTUDISC_OMIT. */ /* Socket level values for IPv6. */ #define SOL_IPV6 41 #define SOL_ICMPV6 58 /* Routing header options for IPv6. */ #define IPV6_RTHDR_LOOSE 0 /* Hop doesn't need to be neighbour. */ #define IPV6_RTHDR_STRICT 1 /* Hop must be a neighbour. */ #define IPV6_RTHDR_TYPE_0 0 /* IPv6 Routing header type 0. */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
types | Folder | 0755 |
|
|
_G_config.h | File | 1.41 KB | 0644 |
|
a.out.h | File | 268 B | 0644 |
|
auxv.h | File | 3.39 KB | 0644 |
|
byteswap-16.h | File | 1.69 KB | 0644 |
|
byteswap.h | File | 5.53 KB | 0644 |
|
cmathcalls.h | File | 4.04 KB | 0644 |
|
confname.h | File | 23.15 KB | 0644 |
|
cpu-set.h | File | 4.41 KB | 0644 |
|
dirent.h | File | 1.69 KB | 0644 |
|
dlfcn.h | File | 2.46 KB | 0644 |
|
elfclass.h | File | 426 B | 0644 |
|
endian.h | File | 176 B | 0644 |
|
environments.h | File | 3.7 KB | 0644 |
|
epoll.h | File | 1.04 KB | 0644 |
|
errno.h | File | 1.39 KB | 0644 |
|
error.h | File | 2.62 KB | 0644 |
|
eventfd.h | File | 1.1 KB | 0644 |
|
fcntl-linux.h | File | 14.02 KB | 0644 |
|
fcntl.h | File | 2.19 KB | 0644 |
|
fcntl2.h | File | 5.44 KB | 0644 |
|
fenv.h | File | 4.5 KB | 0644 |
|
fenvinline.h | File | 190 B | 0644 |
|
floatn-common.h | File | 9.2 KB | 0644 |
|
floatn.h | File | 4.32 KB | 0644 |
|
flt-eval-method.h | File | 1.19 KB | 0644 |
|
fp-fast.h | File | 1.19 KB | 0644 |
|
fp-logb.h | File | 1011 B | 0644 |
|
getopt_core.h | File | 3.58 KB | 0644 |
|
getopt_ext.h | File | 2.97 KB | 0644 |
|
getopt_posix.h | File | 1.77 KB | 0644 |
|
hwcap.h | File | 971 B | 0644 |
|
in.h | File | 9.22 KB | 0644 |
|
initspin.h | File | 25 B | 0644 |
|
inotify.h | File | 1.05 KB | 0644 |
|
ioctl-types.h | File | 2.4 KB | 0644 |
|
ioctls.h | File | 4.37 KB | 0644 |
|
ipc.h | File | 2.02 KB | 0644 |
|
ipctypes.h | File | 1.15 KB | 0644 |
|
iscanonical.h | File | 2.42 KB | 0644 |
|
libc-header-start.h | File | 2.55 KB | 0644 |
|
libio-ldbl.h | File | 1.06 KB | 0644 |
|
libio.h | File | 16.82 KB | 0644 |
|
libm-simd-decl-stubs.h | File | 2.93 KB | 0644 |
|
link.h | File | 4.18 KB | 0644 |
|
local_lim.h | File | 3.11 KB | 0644 |
|
locale.h | File | 1.33 KB | 0644 |
|
long-double.h | File | 923 B | 0644 |
|
math-finite.h | File | 5.25 KB | 0644 |
|
math-vector.h | File | 2.25 KB | 0644 |
|
mathcalls-helper-functions.h | File | 1.72 KB | 0644 |
|
mathcalls.h | File | 12.81 KB | 0644 |
|
mathdef.h | File | 890 B | 0644 |
|
mathinline.h | File | 26.54 KB | 0644 |
|
mman-linux.h | File | 4.69 KB | 0644 |
|
mman-shared.h | File | 2.67 KB | 0644 |
|
mman.h | File | 1.83 KB | 0644 |
|
monetary-ldbl.h | File | 1.02 KB | 0644 |
|
mqueue.h | File | 1.22 KB | 0644 |
|
mqueue2.h | File | 2.1 KB | 0644 |
|
msq.h | File | 2.55 KB | 0644 |
|
netdb.h | File | 1.23 KB | 0644 |
|
param.h | File | 1.4 KB | 0644 |
|
poll.h | File | 2.03 KB | 0644 |
|
poll2.h | File | 2.87 KB | 0644 |
|
posix1_lim.h | File | 4.81 KB | 0644 |
|
posix2_lim.h | File | 2.8 KB | 0644 |
|
posix_opt.h | File | 5.57 KB | 0644 |
|
printf-ldbl.h | File | 991 B | 0644 |
|
pthreadtypes-arch.h | File | 3.21 KB | 0644 |
|
pthreadtypes.h | File | 3 KB | 0644 |
|
ptrace-shared.h | File | 2.83 KB | 0644 |
|
resource.h | File | 6.15 KB | 0644 |
|
sched.h | File | 3.72 KB | 0644 |
|
select.h | File | 2.06 KB | 0644 |
|
select2.h | File | 1.4 KB | 0644 |
|
sem.h | File | 2.53 KB | 0644 |
|
semaphore.h | File | 1.21 KB | 0644 |
|
setjmp.h | File | 1.26 KB | 0644 |
|
setjmp2.h | File | 1.66 KB | 0644 |
|
shm.h | File | 3.48 KB | 0644 |
|
sigaction.h | File | 2.8 KB | 0644 |
|
sigcontext.h | File | 4.16 KB | 0644 |
|
sigevent-consts.h | File | 1.44 KB | 0644 |
|
siginfo-arch.h | File | 729 B | 0644 |
|
siginfo-consts-arch.h | File | 204 B | 0644 |
|
siginfo-consts.h | File | 5.83 KB | 0644 |
|
signalfd.h | File | 1.04 KB | 0644 |
|
signum-generic.h | File | 4.24 KB | 0644 |
|
signum.h | File | 1.59 KB | 0644 |
|
sigstack.h | File | 1.14 KB | 0644 |
|
sigthread.h | File | 1.65 KB | 0644 |
|
sockaddr.h | File | 1.48 KB | 0644 |
|
socket.h | File | 13.99 KB | 0644 |
|
socket2.h | File | 2.95 KB | 0644 |
|
socket_type.h | File | 2.16 KB | 0644 |
|
ss_flags.h | File | 1.16 KB | 0644 |
|
stab.def | File | 8.83 KB | 0644 |
|
stat.h | File | 7.44 KB | 0644 |
|
statfs.h | File | 1.87 KB | 0644 |
|
statvfs.h | File | 3.34 KB | 0644 |
|
stdint-intn.h | File | 1.01 KB | 0644 |
|
stdint-uintn.h | File | 1.02 KB | 0644 |
|
stdio-ldbl.h | File | 2.94 KB | 0644 |
|
stdio.h | File | 5.36 KB | 0644 |
|
stdio2.h | File | 12.25 KB | 0644 |
|
stdio_lim.h | File | 1.18 KB | 0644 |
|
stdlib-bsearch.h | File | 1.34 KB | 0644 |
|
stdlib-float.h | File | 1.09 KB | 0644 |
|
stdlib-ldbl.h | File | 1.34 KB | 0644 |
|
stdlib.h | File | 5.53 KB | 0644 |
|
string_fortified.h | File | 4.21 KB | 0644 |
|
strings_fortified.h | File | 1.18 KB | 0644 |
|
stropts.h | File | 8.25 KB | 0644 |
|
sys_errlist.h | File | 1.19 KB | 0644 |
|
syscall.h | File | 39.59 KB | 0644 |
|
sysctl.h | File | 898 B | 0644 |
|
syslog-ldbl.h | File | 1.18 KB | 0644 |
|
syslog-path.h | File | 1.04 KB | 0644 |
|
syslog.h | File | 1.64 KB | 0644 |
|
sysmacros.h | File | 2.88 KB | 0644 |
|
termios.h | File | 5.24 KB | 0644 |
|
thread-shared-types.h | File | 6.56 KB | 0644 |
|
time.h | File | 2.93 KB | 0644 |
|
timerfd.h | File | 1.08 KB | 0644 |
|
timex.h | File | 4.49 KB | 0644 |
|
types.h | File | 7.8 KB | 0644 |
|
typesizes.h | File | 3.32 KB | 0644 |
|
uintn-identity.h | File | 1.5 KB | 0644 |
|
uio-ext.h | File | 1.88 KB | 0644 |
|
uio_lim.h | File | 1.35 KB | 0644 |
|
unistd.h | File | 13 KB | 0644 |
|
ustat.h | File | 1.06 KB | 0644 |
|
utmp.h | File | 3.96 KB | 0644 |
|
utmpx.h | File | 3.38 KB | 0644 |
|
utsname.h | File | 1.18 KB | 0644 |
|
waitflags.h | File | 2.17 KB | 0644 |
|
waitstatus.h | File | 2.23 KB | 0644 |
|
wchar-ldbl.h | File | 2.37 KB | 0644 |
|
wchar.h | File | 1.86 KB | 0644 |
|
wchar2.h | File | 20.02 KB | 0644 |
|
wctype-wchar.h | File | 6.15 KB | 0644 |
|
wordsize.h | File | 442 B | 0644 |
|
xopen_lim.h | File | 3.77 KB | 0644 |
|
xtitypes.h | File | 1.19 KB | 0644 |
|