3 static st_table *rsock_intern_family_hash;
4 static st_table *rsock_intern_family_noprefix_hash;
5 static st_table *rsock_intern_protocol_family_hash;
6 static st_table *rsock_intern_socktype_hash;
7 static st_table *rsock_intern_ipproto_hash;
8 static st_table *rsock_intern_iplevel_hash;
9 static st_table *rsock_intern_so_optname_hash;
10 static st_table *rsock_intern_ip_optname_hash;
11 static st_table *rsock_intern_ipv6_optname_hash;
12 static st_table *rsock_intern_tcp_optname_hash;
13 static st_table *rsock_intern_udp_optname_hash;
14 static st_table *rsock_intern_scm_optname_hash;
15 static st_table *rsock_intern_local_optname_hash;
18 #define INTEGER2NUM(n) \
19 (FIXNUM_MAX < (n) ? ULL2NUM(n) : \
20 FIXNUM_MIN > (LONG_LONG)(n) ? LL2NUM(n) : \
23 #define INTEGER2NUM(n) \
24 (FIXNUM_MAX < (n) ? ULONG2NUM(n) : \
25 FIXNUM_MIN > (long)(n) ? LONG2NUM(n) : \
45 #if defined(SOCK_STREAM)
51 #if defined(SOCK_DGRAM)
69 #if defined(SOCK_SEQPACKET)
75 #if defined(SOCK_PACKET)
81 #if defined(AF_UNSPEC)
87 #if defined(PF_UNSPEC)
106 #if defined(AF_INET6)
114 #if defined(PF_INET6)
157 #if defined(AF_APPLETALK)
163 #if defined(PF_APPLETALK)
169 #if defined(AF_LOCAL)
175 #if defined(PF_LOCAL)
181 #if defined(AF_IMPLINK)
187 #if defined(PF_IMPLINK)
205 #if defined(AF_CHAOS)
211 #if defined(PF_CHAOS)
265 #if defined(AF_DATAKIT)
271 #if defined(PF_DATAKIT)
277 #if defined(AF_CCITT)
283 #if defined(PF_CCITT)
337 #if defined(AF_HYLINK)
343 #if defined(PF_HYLINK)
349 #if defined(AF_ROUTE)
355 #if defined(PF_ROUTE)
445 #if defined(AF_SYSTEM)
451 #if defined(PF_SYSTEM)
457 #if defined(AF_NETBIOS)
463 #if defined(PF_NETBIOS)
493 #if defined(AF_NETGRAPH)
499 #if defined(PF_NETGRAPH)
517 #if defined(AF_PACKET)
523 #if defined(PF_PACKET)
565 #if defined(MSG_PEEK)
571 #if defined(MSG_DONTROUTE)
583 #if defined(MSG_TRUNC)
589 #if defined(MSG_CTRUNC)
595 #if defined(MSG_WAITALL)
601 #if defined(MSG_DONTWAIT)
613 #if defined(MSG_FLUSH)
619 #if defined(MSG_HOLD)
625 #if defined(MSG_SEND)
631 #if defined(MSG_HAVEMORE)
637 #if defined(MSG_RCVMORE)
643 #if defined(MSG_COMPAT)
649 #if defined(MSG_PROXY)
667 #if defined(MSG_CONFIRM)
679 #if defined(MSG_ERRQUEUE)
685 #if defined(MSG_NOSIGNAL)
691 #if defined(MSG_MORE)
697 #if defined(MSG_FASTOPEN)
703 #if defined(SOL_SOCKET)
721 #if defined(SOL_AX25)
727 #if defined(SOL_ATALK)
745 #if defined(IPPROTO_IP)
751 #if defined(IPPROTO_ICMP)
757 #if defined(IPPROTO_IGMP)
763 #if defined(IPPROTO_GGP)
769 #if defined(IPPROTO_TCP)
775 #if defined(IPPROTO_EGP)
781 #if defined(IPPROTO_PUP)
787 #if defined(IPPROTO_UDP)
793 #if defined(IPPROTO_IDP)
799 #if defined(IPPROTO_HELLO)
805 #if defined(IPPROTO_ND)
811 #if defined(IPPROTO_TP)
817 #if defined(IPPROTO_XTP)
823 #if defined(IPPROTO_EON)
829 #if defined(IPPROTO_BIP)
835 #if defined(IPPROTO_AH)
841 #if defined(IPPROTO_DSTOPTS)
847 #if defined(IPPROTO_ESP)
853 #if defined(IPPROTO_FRAGMENT)
859 #if defined(IPPROTO_HOPOPTS)
865 #if defined(IPPROTO_ICMPV6)
871 #if defined(IPPROTO_IPV6)
877 #if defined(IPPROTO_NONE)
883 #if defined(IPPROTO_ROUTING)
889 #if defined(IPPROTO_RAW)
895 #if defined(IPPROTO_MAX)
901 #if defined(IPPORT_RESERVED)
907 #if defined(IPPORT_USERRESERVED)
913 #if defined(INADDR_ANY)
919 #if defined(INADDR_BROADCAST)
925 #if defined(INADDR_LOOPBACK)
931 #if defined(INADDR_UNSPEC_GROUP)
937 #if defined(INADDR_ALLHOSTS_GROUP)
943 #if defined(INADDR_MAX_LOCAL_GROUP)
949 #if defined(INADDR_NONE)
955 #if defined(IP_OPTIONS)
961 #if defined(IP_HDRINCL)
979 #if defined(IP_RECVOPTS)
985 #if defined(IP_RECVRETOPTS)
991 #if defined(IP_RECVDSTADDR)
997 #if defined(IP_RETOPTS)
1003 #if defined(IP_MINTTL)
1009 #if defined(IP_DONTFRAG)
1015 #if defined(IP_SENDSRCADDR)
1021 #if defined(IP_ONESBCAST)
1027 #if defined(IP_RECVTTL)
1033 #if defined(IP_RECVIF)
1039 #if defined(IP_RECVSLLA)
1045 #if defined(IP_PORTRANGE)
1051 #if defined(IP_MULTICAST_IF)
1057 #if defined(IP_MULTICAST_TTL)
1063 #if defined(IP_MULTICAST_LOOP)
1069 #if defined(IP_ADD_MEMBERSHIP)
1075 #if defined(IP_DROP_MEMBERSHIP)
1081 #if defined(IP_DEFAULT_MULTICAST_TTL)
1087 #if defined(IP_DEFAULT_MULTICAST_LOOP)
1093 #if defined(IP_MAX_MEMBERSHIPS)
1099 #if defined(IP_ROUTER_ALERT)
1105 #if defined(IP_PKTINFO)
1111 #if defined(IP_PKTOPTIONS)
1117 #if defined(IP_MTU_DISCOVER)
1123 #if defined(IP_RECVERR)
1129 #if defined(IP_RECVTOS)
1141 #if defined(IP_FREEBIND)
1147 #if defined(IP_IPSEC_POLICY)
1153 #if defined(IP_XFRM_POLICY)
1159 #if defined(IP_PASSSEC)
1165 #if defined(IP_TRANSPARENT)
1171 #if defined(IP_PMTUDISC_DONT)
1177 #if defined(IP_PMTUDISC_WANT)
1183 #if defined(IP_PMTUDISC_DO)
1189 #if defined(IP_UNBLOCK_SOURCE)
1195 #if defined(IP_BLOCK_SOURCE)
1201 #if defined(IP_ADD_SOURCE_MEMBERSHIP)
1207 #if defined(IP_DROP_SOURCE_MEMBERSHIP)
1213 #if defined(IP_MSFILTER)
1219 #if defined(MCAST_JOIN_GROUP)
1225 #if defined(MCAST_BLOCK_SOURCE)
1231 #if defined(MCAST_UNBLOCK_SOURCE)
1237 #if defined(MCAST_LEAVE_GROUP)
1243 #if defined(MCAST_JOIN_SOURCE_GROUP)
1249 #if defined(MCAST_LEAVE_SOURCE_GROUP)
1255 #if defined(MCAST_MSFILTER)
1261 #if defined(MCAST_EXCLUDE)
1267 #if defined(MCAST_INCLUDE)
1273 #if defined(SO_DEBUG)
1279 #if defined(SO_REUSEADDR)
1285 #if defined(SO_REUSEPORT)
1291 #if defined(SO_TYPE)
1297 #if defined(SO_ERROR)
1303 #if defined(SO_DONTROUTE)
1309 #if defined(SO_BROADCAST)
1315 #if defined(SO_SNDBUF)
1321 #if defined(SO_RCVBUF)
1327 #if defined(SO_SNDBUFFORCE)
1333 #if defined(SO_RCVBUFFORCE)
1339 #if defined(SO_KEEPALIVE)
1345 #if defined(SO_OOBINLINE)
1351 #if defined(SO_NO_CHECK)
1357 #if defined(SO_PRIORITY)
1363 #if defined(SO_LINGER)
1369 #if defined(SO_PASSCRED)
1375 #if defined(SO_PEERCRED)
1381 #if defined(SO_RCVLOWAT)
1387 #if defined(SO_SNDLOWAT)
1393 #if defined(SO_RCVTIMEO)
1399 #if defined(SO_SNDTIMEO)
1405 #if defined(SO_ACCEPTCONN)
1411 #if defined(SO_USELOOPBACK)
1417 #if defined(SO_ACCEPTFILTER)
1423 #if defined(SO_DONTTRUNC)
1429 #if defined(SO_WANTMORE)
1435 #if defined(SO_WANTOOBFLAG)
1441 #if defined(SO_NREAD)
1453 #if defined(SO_NOSIGPIPE)
1459 #if defined(SO_SECURITY_AUTHENTICATION)
1465 #if defined(SO_SECURITY_ENCRYPTION_TRANSPORT)
1471 #if defined(SO_SECURITY_ENCRYPTION_NETWORK)
1477 #if defined(SO_BINDTODEVICE)
1483 #if defined(SO_ATTACH_FILTER)
1489 #if defined(SO_DETACH_FILTER)
1495 #if defined(SO_GET_FILTER)
1501 #if defined(SO_PEERNAME)
1507 #if defined(SO_TIMESTAMP)
1513 #if defined(SO_TIMESTAMPNS)
1519 #if defined(SO_BINTIME)
1525 #if defined(SO_RECVUCRED)
1531 #if defined(SO_MAC_EXEMPT)
1537 #if defined(SO_ALLZONES)
1543 #if defined(SO_PEERSEC)
1549 #if defined(SO_PASSSEC)
1555 #if defined(SO_MARK)
1561 #if defined(SO_TIMESTAMPING)
1567 #if defined(SO_PROTOCOL)
1573 #if defined(SO_DOMAIN)
1579 #if defined(SO_RXQ_OVFL)
1585 #if defined(SO_WIFI_STATUS)
1591 #if defined(SO_PEEK_OFF)
1597 #if defined(SO_NOFCS)
1603 #if defined(SO_LOCK_FILTER)
1609 #if defined(SO_SELECT_ERR_QUEUE)
1615 #if defined(SO_BUSY_POLL)
1621 #if defined(SO_MAX_PACING_RATE)
1627 #if defined(SO_BPF_EXTENSIONS)
1633 #if defined(SOPRI_INTERACTIVE)
1639 #if defined(SOPRI_NORMAL)
1645 #if defined(SOPRI_BACKGROUND)
1651 #if defined(IPX_TYPE)
1657 #if defined(TCP_NODELAY)
1663 #if defined(TCP_MAXSEG)
1669 #if defined(TCP_CORK)
1675 #if defined(TCP_DEFER_ACCEPT)
1681 #if defined(TCP_INFO)
1687 #if defined(TCP_KEEPCNT)
1693 #if defined(TCP_KEEPIDLE)
1699 #if defined(TCP_KEEPINTVL)
1705 #if defined(TCP_LINGER2)
1711 #if defined(TCP_MD5SIG)
1717 #if defined(TCP_NOOPT)
1723 #if defined(TCP_NOPUSH)
1729 #if defined(TCP_QUICKACK)
1735 #if defined(TCP_SYNCNT)
1741 #if defined(TCP_WINDOW_CLAMP)
1747 #if defined(TCP_FASTOPEN)
1753 #if defined(TCP_CONGESTION)
1759 #if defined(TCP_COOKIE_TRANSACTIONS)
1765 #if defined(TCP_QUEUE_SEQ)
1771 #if defined(TCP_REPAIR)
1777 #if defined(TCP_REPAIR_OPTIONS)
1783 #if defined(TCP_REPAIR_QUEUE)
1789 #if defined(TCP_THIN_DUPACK)
1795 #if defined(TCP_THIN_LINEAR_TIMEOUTS)
1801 #if defined(TCP_TIMESTAMP)
1807 #if defined(TCP_USER_TIMEOUT)
1813 #if defined(UDP_CORK)
1819 #if defined(EAI_ADDRFAMILY)
1825 #if defined(EAI_AGAIN)
1831 #if defined(EAI_BADFLAGS)
1837 #if defined(EAI_FAIL)
1843 #if defined(EAI_FAMILY)
1849 #if defined(EAI_MEMORY)
1855 #if defined(EAI_NODATA)
1861 #if defined(EAI_NONAME)
1867 #if defined(EAI_OVERFLOW)
1873 #if defined(EAI_SERVICE)
1879 #if defined(EAI_SOCKTYPE)
1885 #if defined(EAI_SYSTEM)
1891 #if defined(EAI_BADHINTS)
1897 #if defined(EAI_PROTOCOL)
1903 #if defined(EAI_MAX)
1909 #if defined(AI_PASSIVE)
1915 #if defined(AI_CANONNAME)
1921 #if defined(AI_NUMERICHOST)
1927 #if defined(AI_NUMERICSERV)
1933 #if defined(AI_MASK)
1945 #if defined(AI_V4MAPPED_CFG)
1951 #if defined(AI_ADDRCONFIG)
1957 #if defined(AI_V4MAPPED)
1963 #if defined(AI_DEFAULT)
1969 #if defined(NI_MAXHOST)
1975 #if defined(NI_MAXSERV)
1981 #if defined(NI_NOFQDN)
1987 #if defined(NI_NUMERICHOST)
1993 #if defined(NI_NAMEREQD)
1999 #if defined(NI_NUMERICSERV)
2005 #if defined(NI_DGRAM)
2011 #if defined(SHUT_RD)
2017 #if defined(SHUT_WR)
2023 #if defined(SHUT_RDWR)
2030 #if defined(IPV6_JOIN_GROUP)
2038 #if defined(IPV6_LEAVE_GROUP)
2046 #if defined(IPV6_MULTICAST_HOPS)
2054 #if defined(IPV6_MULTICAST_IF)
2062 #if defined(IPV6_MULTICAST_LOOP)
2070 #if defined(IPV6_UNICAST_HOPS)
2078 #if defined(IPV6_V6ONLY)
2086 #if defined(IPV6_CHECKSUM)
2094 #if defined(IPV6_DONTFRAG)
2102 #if defined(IPV6_DSTOPTS)
2110 #if defined(IPV6_HOPLIMIT)
2118 #if defined(IPV6_HOPOPTS)
2126 #if defined(IPV6_NEXTHOP)
2134 #if defined(IPV6_PATHMTU)
2142 #if defined(IPV6_PKTINFO)
2150 #if defined(IPV6_RECVDSTOPTS)
2158 #if defined(IPV6_RECVHOPLIMIT)
2166 #if defined(IPV6_RECVHOPOPTS)
2174 #if defined(IPV6_RECVPKTINFO)
2182 #if defined(IPV6_RECVRTHDR)
2190 #if defined(IPV6_RECVTCLASS)
2198 #if defined(IPV6_RTHDR)
2206 #if defined(IPV6_RTHDRDSTOPTS)
2214 #if defined(IPV6_RTHDR_TYPE_0)
2222 #if defined(IPV6_RECVPATHMTU)
2230 #if defined(IPV6_TCLASS)
2238 #if defined(IPV6_USE_MIN_MTU)
2245 #if defined(INET_ADDRSTRLEN)
2251 #if defined(INET6_ADDRSTRLEN)
2257 #if defined(IFNAMSIZ)
2263 #if defined(IF_NAMESIZE)
2269 #if defined(SOMAXCONN)
2275 #if defined(SCM_RIGHTS)
2281 #if defined(SCM_TIMESTAMP)
2287 #if defined(SCM_TIMESTAMPNS)
2293 #if defined(SCM_TIMESTAMPING)
2299 #if defined(SCM_BINTIME)
2305 #if defined(SCM_CREDENTIALS)
2311 #if defined(SCM_CREDS)
2317 #if defined(SCM_UCRED)
2323 #if defined(SCM_WIFI_STATUS)
2329 #if defined(LOCAL_PEERCRED)
2335 #if defined(LOCAL_CREDS)
2341 #if defined(LOCAL_CONNWAIT)
2347 #if defined(IFF_802_1Q_VLAN)
2353 #if defined(IFF_ALLMULTI)
2359 #if defined(IFF_ALTPHYS)
2365 #if defined(IFF_AUTOMEDIA)
2371 #if defined(IFF_BONDING)
2377 #if defined(IFF_BRIDGE_PORT)
2383 #if defined(IFF_BROADCAST)
2389 #if defined(IFF_CANTCONFIG)
2395 #if defined(IFF_DEBUG)
2401 #if defined(IFF_DISABLE_NETPOLL)
2407 #if defined(IFF_DONT_BRIDGE)
2413 #if defined(IFF_DORMANT)
2419 #if defined(IFF_DRV_OACTIVE)
2425 #if defined(IFF_DRV_RUNNING)
2431 #if defined(IFF_DYING)
2437 #if defined(IFF_DYNAMIC)
2443 #if defined(IFF_EBRIDGE)
2449 #if defined(IFF_ECHO)
2455 #if defined(IFF_ISATAP)
2461 #if defined(IFF_LINK0)
2467 #if defined(IFF_LINK1)
2473 #if defined(IFF_LINK2)
2479 #if defined(IFF_LIVE_ADDR_CHANGE)
2485 #if defined(IFF_LOOPBACK)
2491 #if defined(IFF_LOWER_UP)
2497 #if defined(IFF_MACVLAN_PORT)
2503 #if defined(IFF_MASTER)
2509 #if defined(IFF_MASTER_8023AD)
2515 #if defined(IFF_MASTER_ALB)
2521 #if defined(IFF_MASTER_ARPMON)
2527 #if defined(IFF_MONITOR)
2533 #if defined(IFF_MULTICAST)
2539 #if defined(IFF_NOARP)
2545 #if defined(IFF_NOTRAILERS)
2551 #if defined(IFF_OACTIVE)
2557 #if defined(IFF_OVS_DATAPATH)
2563 #if defined(IFF_POINTOPOINT)
2569 #if defined(IFF_PORTSEL)
2575 #if defined(IFF_PPROMISC)
2581 #if defined(IFF_PROMISC)
2587 #if defined(IFF_RENAMING)
2593 #if defined(IFF_ROUTE)
2599 #if defined(IFF_RUNNING)
2605 #if defined(IFF_SIMPLEX)
2611 #if defined(IFF_SLAVE)
2617 #if defined(IFF_SLAVE_INACTIVE)
2623 #if defined(IFF_SLAVE_NEEDARP)
2629 #if defined(IFF_SMART)
2635 #if defined(IFF_STATICARP)
2641 #if defined(IFF_SUPP_NOFCS)
2647 #if defined(IFF_TEAM_PORT)
2653 #if defined(IFF_TX_SKB_SHARING)
2659 #if defined(IFF_UNICAST_FLT)
2671 #if defined(IFF_WAN_HDLC)
2677 #if defined(IFF_XMIT_DST_RELEASE)
2683 #if defined(IFF_VOLATILE)
2689 #if defined(IFF_CANTCHANGE)
3171 #ifdef SOCK_SEQPACKET
3194 #ifdef IPPROTO_ROUTING
3203 #ifdef IPPROTO_ICMPV6
3206 #ifdef IPPROTO_HOPOPTS
3209 #ifdef IPPROTO_FRAGMENT
3215 #ifdef IPPROTO_DSTOPTS
3236 #ifdef IPPROTO_HELLO
3274 #ifdef IPPROTO_ROUTING
3283 #ifdef IPPROTO_ICMPV6
3286 #ifdef IPPROTO_HOPOPTS
3289 #ifdef IPPROTO_FRAGMENT
3295 #ifdef IPPROTO_DSTOPTS
3316 #ifdef IPPROTO_HELLO
3355 #ifdef IPPROTO_ROUTING
3364 #ifdef IPPROTO_ICMPV6
3367 #ifdef IPPROTO_HOPOPTS
3370 #ifdef IPPROTO_FRAGMENT
3376 #ifdef IPPROTO_DSTOPTS
3397 #ifdef IPPROTO_HELLO
3432 #ifdef SO_BPF_EXTENSIONS
3435 #ifdef SO_MAX_PACING_RATE
3441 #ifdef SO_SELECT_ERR_QUEUE
3444 #ifdef SO_LOCK_FILTER
3453 #ifdef SO_WIFI_STATUS
3465 #ifdef SO_TIMESTAMPING
3480 #ifdef SO_MAC_EXEMPT
3489 #ifdef SO_TIMESTAMPNS
3498 #ifdef SO_GET_FILTER
3501 #ifdef SO_DETACH_FILTER
3504 #ifdef SO_ATTACH_FILTER
3507 #ifdef SO_BINDTODEVICE
3510 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
3513 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
3516 #ifdef SO_SECURITY_AUTHENTICATION
3528 #ifdef SO_WANTOOBFLAG
3537 #ifdef SO_ACCEPTFILTER
3540 #ifdef SO_USELOOPBACK
3543 #ifdef SO_ACCEPTCONN
3579 #ifdef SO_RCVBUFFORCE
3582 #ifdef SO_SNDBUFFORCE
3612 #ifdef SO_BPF_EXTENSIONS
3615 #ifdef SO_MAX_PACING_RATE
3621 #ifdef SO_SELECT_ERR_QUEUE
3624 #ifdef SO_LOCK_FILTER
3633 #ifdef SO_WIFI_STATUS
3645 #ifdef SO_TIMESTAMPING
3660 #ifdef SO_MAC_EXEMPT
3669 #ifdef SO_TIMESTAMPNS
3678 #ifdef SO_GET_FILTER
3681 #ifdef SO_DETACH_FILTER
3684 #ifdef SO_ATTACH_FILTER
3687 #ifdef SO_BINDTODEVICE
3690 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
3693 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
3696 #ifdef SO_SECURITY_AUTHENTICATION
3708 #ifdef SO_WANTOOBFLAG
3717 #ifdef SO_ACCEPTFILTER
3720 #ifdef SO_USELOOPBACK
3723 #ifdef SO_ACCEPTCONN
3759 #ifdef SO_RCVBUFFORCE
3762 #ifdef SO_SNDBUFFORCE
3797 #ifdef IP_DROP_SOURCE_MEMBERSHIP
3800 #ifdef IP_ADD_SOURCE_MEMBERSHIP
3803 #ifdef IP_BLOCK_SOURCE
3806 #ifdef IP_UNBLOCK_SOURCE
3809 #ifdef IP_PMTUDISC_DO
3812 #ifdef IP_PMTUDISC_WANT
3815 #ifdef IP_PMTUDISC_DONT
3818 #ifdef IP_TRANSPARENT
3824 #ifdef IP_XFRM_POLICY
3827 #ifdef IP_IPSEC_POLICY
3842 #ifdef IP_MTU_DISCOVER
3845 #ifdef IP_PKTOPTIONS
3851 #ifdef IP_ROUTER_ALERT
3854 #ifdef IP_MAX_MEMBERSHIPS
3857 #ifdef IP_DEFAULT_MULTICAST_LOOP
3860 #ifdef IP_DEFAULT_MULTICAST_TTL
3863 #ifdef IP_DROP_MEMBERSHIP
3866 #ifdef IP_ADD_MEMBERSHIP
3869 #ifdef IP_MULTICAST_LOOP
3872 #ifdef IP_MULTICAST_TTL
3875 #ifdef IP_MULTICAST_IF
3893 #ifdef IP_SENDSRCADDR
3905 #ifdef IP_RECVDSTADDR
3908 #ifdef IP_RECVRETOPTS
3929 #ifdef IP_DROP_SOURCE_MEMBERSHIP
3932 #ifdef IP_ADD_SOURCE_MEMBERSHIP
3935 #ifdef IP_BLOCK_SOURCE
3938 #ifdef IP_UNBLOCK_SOURCE
3941 #ifdef IP_PMTUDISC_DO
3944 #ifdef IP_PMTUDISC_WANT
3947 #ifdef IP_PMTUDISC_DONT
3950 #ifdef IP_TRANSPARENT
3956 #ifdef IP_XFRM_POLICY
3959 #ifdef IP_IPSEC_POLICY
3974 #ifdef IP_MTU_DISCOVER
3977 #ifdef IP_PKTOPTIONS
3983 #ifdef IP_ROUTER_ALERT
3986 #ifdef IP_MAX_MEMBERSHIPS
3989 #ifdef IP_DEFAULT_MULTICAST_LOOP
3992 #ifdef IP_DEFAULT_MULTICAST_TTL
3995 #ifdef IP_DROP_MEMBERSHIP
3998 #ifdef IP_ADD_MEMBERSHIP
4001 #ifdef IP_MULTICAST_LOOP
4004 #ifdef IP_MULTICAST_TTL
4007 #ifdef IP_MULTICAST_IF
4025 #ifdef IP_SENDSRCADDR
4037 #ifdef IP_RECVDSTADDR
4040 #ifdef IP_RECVRETOPTS
4060 #ifdef IPV6_USE_MIN_MTU
4066 #ifdef IPV6_RECVPATHMTU
4069 #ifdef IPV6_RTHDR_TYPE_0
4072 #ifdef IPV6_RTHDRDSTOPTS
4078 #ifdef IPV6_RECVTCLASS
4081 #ifdef IPV6_RECVRTHDR
4084 #ifdef IPV6_RECVPKTINFO
4087 #ifdef IPV6_RECVHOPOPTS
4090 #ifdef IPV6_RECVHOPLIMIT
4093 #ifdef IPV6_RECVDSTOPTS
4108 #ifdef IPV6_HOPLIMIT
4114 #ifdef IPV6_DONTFRAG
4117 #ifdef IPV6_CHECKSUM
4123 #ifdef IPV6_UNICAST_HOPS
4126 #ifdef IPV6_MULTICAST_LOOP
4129 #ifdef IPV6_MULTICAST_IF
4132 #ifdef IPV6_MULTICAST_HOPS
4135 #ifdef IPV6_LEAVE_GROUP
4138 #ifdef IPV6_JOIN_GROUP
4141 #ifdef IPV6_USE_MIN_MTU
4147 #ifdef IPV6_RECVPATHMTU
4150 #ifdef IPV6_RTHDR_TYPE_0
4153 #ifdef IPV6_RTHDRDSTOPTS
4159 #ifdef IPV6_RECVTCLASS
4162 #ifdef IPV6_RECVRTHDR
4165 #ifdef IPV6_RECVPKTINFO
4168 #ifdef IPV6_RECVHOPOPTS
4171 #ifdef IPV6_RECVHOPLIMIT
4174 #ifdef IPV6_RECVDSTOPTS
4189 #ifdef IPV6_HOPLIMIT
4195 #ifdef IPV6_DONTFRAG
4198 #ifdef IPV6_CHECKSUM
4204 #ifdef IPV6_UNICAST_HOPS
4207 #ifdef IPV6_MULTICAST_LOOP
4210 #ifdef IPV6_MULTICAST_IF
4213 #ifdef IPV6_MULTICAST_HOPS
4216 #ifdef IPV6_LEAVE_GROUP
4219 #ifdef IPV6_JOIN_GROUP
4224 #ifdef TCP_USER_TIMEOUT
4227 #ifdef TCP_TIMESTAMP
4230 #ifdef TCP_THIN_LINEAR_TIMEOUTS
4233 #ifdef TCP_THIN_DUPACK
4236 #ifdef TCP_REPAIR_QUEUE
4239 #ifdef TCP_REPAIR_OPTIONS
4245 #ifdef TCP_QUEUE_SEQ
4248 #ifdef TCP_COOKIE_TRANSACTIONS
4251 #ifdef TCP_CONGESTION
4257 #ifdef TCP_WINDOW_CLAMP
4278 #ifdef TCP_KEEPINTVL
4290 #ifdef TCP_DEFER_ACCEPT
4302 #ifdef TCP_USER_TIMEOUT
4305 #ifdef TCP_TIMESTAMP
4308 #ifdef TCP_THIN_LINEAR_TIMEOUTS
4311 #ifdef TCP_THIN_DUPACK
4314 #ifdef TCP_REPAIR_QUEUE
4317 #ifdef TCP_REPAIR_OPTIONS
4323 #ifdef TCP_QUEUE_SEQ
4326 #ifdef TCP_COOKIE_TRANSACTIONS
4329 #ifdef TCP_CONGESTION
4335 #ifdef TCP_WINDOW_CLAMP
4356 #ifdef TCP_KEEPINTVL
4368 #ifdef TCP_DEFER_ACCEPT
4390 #ifdef SCM_WIFI_STATUS
4399 #ifdef SCM_CREDENTIALS
4405 #ifdef SCM_TIMESTAMPING
4408 #ifdef SCM_TIMESTAMPNS
4411 #ifdef SCM_TIMESTAMP
4417 #ifdef SCM_WIFI_STATUS
4426 #ifdef SCM_CREDENTIALS
4432 #ifdef SCM_TIMESTAMPING
4435 #ifdef SCM_TIMESTAMPNS
4438 #ifdef SCM_TIMESTAMP
4446 #ifdef LOCAL_CONNWAIT
4452 #ifdef LOCAL_PEERCRED
4455 #ifdef LOCAL_CONNWAIT
4461 #ifdef LOCAL_PEERCRED
4473 if (
memcmp(
str,
"NS", 2) == 0) { *valp = AF_NS;
return 0; }
4479 if (
memcmp(
str,
"IPX", 3) == 0) { *valp = AF_IPX;
return 0; }
4482 if (
memcmp(
str,
"PUP", 3) == 0) { *valp = AF_PUP;
return 0; }
4485 if (
memcmp(
str,
"ISO", 3) == 0) { *valp = AF_ISO;
return 0; }
4488 if (
memcmp(
str,
"OSI", 3) == 0) { *valp = AF_OSI;
return 0; }
4491 if (
memcmp(
str,
"SNA", 3) == 0) { *valp = AF_SNA;
return 0; }
4494 if (
memcmp(
str,
"DEC", 3) == 0) { *valp = AF_DEC;
return 0; }
4497 if (
memcmp(
str,
"DLI", 3) == 0) { *valp = AF_DLI;
return 0; }
4500 if (
memcmp(
str,
"LAT", 3) == 0) { *valp = AF_LAT;
return 0; }
4503 if (
memcmp(
str,
"CNT", 3) == 0) { *valp = AF_CNT;
return 0; }
4506 if (
memcmp(
str,
"SIP", 3) == 0) { *valp = AF_SIP;
return 0; }
4509 if (
memcmp(
str,
"PPP", 3) == 0) { *valp = AF_PPP;
return 0; }
4512 if (
memcmp(
str,
"ATM", 3) == 0) { *valp = AF_ATM;
return 0; }
4515 if (
memcmp(
str,
"MAX", 3) == 0) { *valp = AF_MAX;
return 0; }
4521 if (
memcmp(
str,
"INET", 4) == 0) { *valp = AF_INET;
return 0; }
4524 if (
memcmp(
str,
"UNIX", 4) == 0) { *valp = AF_UNIX;
return 0; }
4527 if (
memcmp(
str,
"AX25", 4) == 0) { *valp = AF_AX25;
return 0; }
4530 if (
memcmp(
str,
"ECMA", 4) == 0) { *valp = AF_ECMA;
return 0; }
4533 if (
memcmp(
str,
"LINK", 4) == 0) { *valp = AF_LINK;
return 0; }
4536 if (
memcmp(
str,
"COIP", 4) == 0) { *valp = AF_COIP;
return 0; }
4539 if (
memcmp(
str,
"NDRV", 4) == 0) { *valp = AF_NDRV;
return 0; }
4542 if (
memcmp(
str,
"ISDN", 4) == 0) { *valp = AF_ISDN;
return 0; }
4545 if (
memcmp(
str,
"NATM", 4) == 0) { *valp = AF_NATM;
return 0; }
4548 if (
memcmp(
str,
"E164", 4) == 0) { *valp = AF_E164;
return 0; }
4554 if (
memcmp(
str,
"AF_NS", 5) == 0) { *valp = AF_NS;
return 0; }
4557 if (
memcmp(
str,
"PF_NS", 5) == 0) { *valp = PF_NS;
return 0; }
4560 if (
memcmp(
str,
"INET6", 5) == 0) { *valp = AF_INET6;
return 0; }
4563 if (
memcmp(
str,
"LOCAL", 5) == 0) { *valp = AF_LOCAL;
return 0; }
4566 if (
memcmp(
str,
"CHAOS", 5) == 0) { *valp = AF_CHAOS;
return 0; }
4569 if (
memcmp(
str,
"CCITT", 5) == 0) { *valp = AF_CCITT;
return 0; }
4572 if (
memcmp(
str,
"ROUTE", 5) == 0) { *valp = AF_ROUTE;
return 0; }
4578 if (
memcmp(
str,
"AF_IPX", 6) == 0) { *valp = AF_IPX;
return 0; }
4581 if (
memcmp(
str,
"PF_IPX", 6) == 0) { *valp = PF_IPX;
return 0; }
4584 if (
memcmp(
str,
"AF_PUP", 6) == 0) { *valp = AF_PUP;
return 0; }
4587 if (
memcmp(
str,
"PF_PUP", 6) == 0) { *valp = PF_PUP;
return 0; }
4590 if (
memcmp(
str,
"AF_ISO", 6) == 0) { *valp = AF_ISO;
return 0; }
4593 if (
memcmp(
str,
"PF_ISO", 6) == 0) { *valp = PF_ISO;
return 0; }
4596 if (
memcmp(
str,
"AF_OSI", 6) == 0) { *valp = AF_OSI;
return 0; }
4599 if (
memcmp(
str,
"PF_OSI", 6) == 0) { *valp = PF_OSI;
return 0; }
4602 if (
memcmp(
str,
"AF_SNA", 6) == 0) { *valp = AF_SNA;
return 0; }
4605 if (
memcmp(
str,
"PF_SNA", 6) == 0) { *valp = PF_SNA;
return 0; }
4608 if (
memcmp(
str,
"AF_DEC", 6) == 0) { *valp = AF_DEC;
return 0; }
4611 if (
memcmp(
str,
"PF_DEC", 6) == 0) { *valp = PF_DEC;
return 0; }
4614 if (
memcmp(
str,
"AF_DLI", 6) == 0) { *valp = AF_DLI;
return 0; }
4617 if (
memcmp(
str,
"PF_DLI", 6) == 0) { *valp = PF_DLI;
return 0; }
4620 if (
memcmp(
str,
"AF_LAT", 6) == 0) { *valp = AF_LAT;
return 0; }
4623 if (
memcmp(
str,
"PF_LAT", 6) == 0) { *valp = PF_LAT;
return 0; }
4626 if (
memcmp(
str,
"AF_CNT", 6) == 0) { *valp = AF_CNT;
return 0; }
4629 if (
memcmp(
str,
"PF_CNT", 6) == 0) { *valp = PF_CNT;
return 0; }
4632 if (
memcmp(
str,
"AF_SIP", 6) == 0) { *valp = AF_SIP;
return 0; }
4635 if (
memcmp(
str,
"PF_SIP", 6) == 0) { *valp = PF_SIP;
return 0; }
4638 if (
memcmp(
str,
"AF_PPP", 6) == 0) { *valp = AF_PPP;
return 0; }
4641 if (
memcmp(
str,
"PF_PPP", 6) == 0) { *valp = PF_PPP;
return 0; }
4644 if (
memcmp(
str,
"AF_ATM", 6) == 0) { *valp = AF_ATM;
return 0; }
4647 if (
memcmp(
str,
"PF_ATM", 6) == 0) { *valp = PF_ATM;
return 0; }
4650 if (
memcmp(
str,
"AF_MAX", 6) == 0) { *valp = AF_MAX;
return 0; }
4653 if (
memcmp(
str,
"PF_MAX", 6) == 0) { *valp = PF_MAX;
return 0; }
4656 if (
memcmp(
str,
"PF_XTP", 6) == 0) { *valp = PF_XTP;
return 0; }
4659 if (
memcmp(
str,
"PF_PIP", 6) == 0) { *valp = PF_PIP;
return 0; }
4662 if (
memcmp(
str,
"PF_KEY", 6) == 0) { *valp = PF_KEY;
return 0; }
4668 if (
memcmp(
str,
"HYLINK", 6) == 0) { *valp = AF_HYLINK;
return 0; }
4671 if (
memcmp(
str,
"SYSTEM", 6) == 0) { *valp = AF_SYSTEM;
return 0; }
4674 if (
memcmp(
str,
"PACKET", 6) == 0) { *valp = AF_PACKET;
return 0; }
4680 if (
memcmp(
str,
"AF_INET", 7) == 0) { *valp = AF_INET;
return 0; }
4686 if (
memcmp(
str,
"AF_UNIX", 7) == 0) { *valp = AF_UNIX;
return 0; }
4689 if (
memcmp(
str,
"PF_UNIX", 7) == 0) { *valp = PF_UNIX;
return 0; }
4692 if (
memcmp(
str,
"AF_AX25", 7) == 0) { *valp = AF_AX25;
return 0; }
4695 if (
memcmp(
str,
"PF_AX25", 7) == 0) { *valp = PF_AX25;
return 0; }
4698 if (
memcmp(
str,
"AF_ECMA", 7) == 0) { *valp = AF_ECMA;
return 0; }
4701 if (
memcmp(
str,
"PF_ECMA", 7) == 0) { *valp = PF_ECMA;
return 0; }
4704 if (
memcmp(
str,
"AF_LINK", 7) == 0) { *valp = AF_LINK;
return 0; }
4707 if (
memcmp(
str,
"PF_LINK", 7) == 0) { *valp = PF_LINK;
return 0; }
4710 if (
memcmp(
str,
"AF_COIP", 7) == 0) { *valp = AF_COIP;
return 0; }
4713 if (
memcmp(
str,
"PF_COIP", 7) == 0) { *valp = PF_COIP;
return 0; }
4716 if (
memcmp(
str,
"AF_NDRV", 7) == 0) { *valp = AF_NDRV;
return 0; }
4719 if (
memcmp(
str,
"PF_NDRV", 7) == 0) { *valp = PF_NDRV;
return 0; }
4722 if (
memcmp(
str,
"AF_ISDN", 7) == 0) { *valp = AF_ISDN;
return 0; }
4725 if (
memcmp(
str,
"PF_ISDN", 7) == 0) { *valp = PF_ISDN;
return 0; }
4728 if (
memcmp(
str,
"AF_NATM", 7) == 0) { *valp = AF_NATM;
return 0; }
4731 if (
memcmp(
str,
"PF_NATM", 7) == 0) { *valp = PF_NATM;
return 0; }
4734 if (
memcmp(
str,
"AF_E164", 7) == 0) { *valp = AF_E164;
return 0; }
4737 if (
memcmp(
str,
"PF_RTIP", 7) == 0) { *valp = PF_RTIP;
return 0; }
4740 if (
memcmp(
str,
"IMPLINK", 7) == 0) { *valp = AF_IMPLINK;
return 0; }
4743 if (
memcmp(
str,
"DATAKIT", 7) == 0) { *valp = AF_DATAKIT;
return 0; }
4746 if (
memcmp(
str,
"NETBIOS", 7) == 0) { *valp = AF_NETBIOS;
return 0; }
4752 if (
memcmp(
str,
"AF_INET6", 8) == 0) { *valp = AF_INET6;
return 0; }
4755 if (
memcmp(
str,
"PF_INET6", 8) == 0) { *valp = PF_INET6;
return 0; }
4758 if (
memcmp(
str,
"AF_LOCAL", 8) == 0) { *valp = AF_LOCAL;
return 0; }
4761 if (
memcmp(
str,
"PF_LOCAL", 8) == 0) { *valp = PF_LOCAL;
return 0; }
4764 if (
memcmp(
str,
"AF_CHAOS", 8) == 0) { *valp = AF_CHAOS;
return 0; }
4767 if (
memcmp(
str,
"PF_CHAOS", 8) == 0) { *valp = PF_CHAOS;
return 0; }
4770 if (
memcmp(
str,
"AF_CCITT", 8) == 0) { *valp = AF_CCITT;
return 0; }
4773 if (
memcmp(
str,
"PF_CCITT", 8) == 0) { *valp = PF_CCITT;
return 0; }
4776 if (
memcmp(
str,
"AF_ROUTE", 8) == 0) { *valp = AF_ROUTE;
return 0; }
4779 if (
memcmp(
str,
"PF_ROUTE", 8) == 0) { *valp = PF_ROUTE;
return 0; }
4782 if (
memcmp(
str,
"NETGRAPH", 8) == 0) { *valp = AF_NETGRAPH;
return 0; }
4794 if (
memcmp(
str,
"AF_HYLINK", 9) == 0) { *valp = AF_HYLINK;
return 0; }
4797 if (
memcmp(
str,
"PF_HYLINK", 9) == 0) { *valp = PF_HYLINK;
return 0; }
4800 if (
memcmp(
str,
"AF_SYSTEM", 9) == 0) { *valp = AF_SYSTEM;
return 0; }
4803 if (
memcmp(
str,
"PF_SYSTEM", 9) == 0) { *valp = PF_SYSTEM;
return 0; }
4806 if (
memcmp(
str,
"AF_PACKET", 9) == 0) { *valp = AF_PACKET;
return 0; }
4809 if (
memcmp(
str,
"PF_PACKET", 9) == 0) { *valp = PF_PACKET;
return 0; }
4812 if (
memcmp(
str,
"APPLETALK", 9) == 0) { *valp = AF_APPLETALK;
return 0; }
4818 if (
memcmp(
str,
"AF_IMPLINK", 10) == 0) { *valp = AF_IMPLINK;
return 0; }
4821 if (
memcmp(
str,
"PF_IMPLINK", 10) == 0) { *valp = PF_IMPLINK;
return 0; }
4824 if (
memcmp(
str,
"AF_DATAKIT", 10) == 0) { *valp = AF_DATAKIT;
return 0; }
4827 if (
memcmp(
str,
"PF_DATAKIT", 10) == 0) { *valp = PF_DATAKIT;
return 0; }
4830 if (
memcmp(
str,
"AF_NETBIOS", 10) == 0) { *valp = AF_NETBIOS;
return 0; }
4833 if (
memcmp(
str,
"PF_NETBIOS", 10) == 0) { *valp = PF_NETBIOS;
return 0; }
4839 if (
memcmp(
str,
"AF_NETGRAPH", 11) == 0) { *valp = AF_NETGRAPH;
return 0; }
4842 if (
memcmp(
str,
"PF_NETGRAPH", 11) == 0) { *valp = PF_NETGRAPH;
return 0; }
4848 if (
memcmp(
str,
"AF_APPLETALK", 12) == 0) { *valp = AF_APPLETALK;
return 0; }
4851 if (
memcmp(
str,
"PF_APPLETALK", 12) == 0) { *valp = PF_APPLETALK;
return 0; }
4856 if (!
str || !valp) {}
4868 if (
memcmp(
str,
"RAW", 3) == 0) { *valp = SOCK_RAW;
return 0; }
4871 if (
memcmp(
str,
"RDM", 3) == 0) { *valp = SOCK_RDM;
return 0; }
4877 if (
memcmp(
str,
"DGRAM", 5) == 0) { *valp = SOCK_DGRAM;
return 0; }
4883 if (
memcmp(
str,
"STREAM", 6) == 0) { *valp = SOCK_STREAM;
return 0; }
4886 if (
memcmp(
str,
"PACKET", 6) == 0) { *valp = SOCK_PACKET;
return 0; }
4892 if (
memcmp(
str,
"SOCK_RAW", 8) == 0) { *valp = SOCK_RAW;
return 0; }
4895 if (
memcmp(
str,
"SOCK_RDM", 8) == 0) { *valp = SOCK_RDM;
return 0; }
4900 #ifdef SOCK_SEQPACKET
4901 if (
memcmp(
str,
"SEQPACKET", 9) == 0) { *valp = SOCK_SEQPACKET;
return 0; }
4907 if (
memcmp(
str,
"SOCK_DGRAM", 10) == 0) { *valp = SOCK_DGRAM;
return 0; }
4913 if (
memcmp(
str,
"SOCK_STREAM", 11) == 0) { *valp = SOCK_STREAM;
return 0; }
4916 if (
memcmp(
str,
"SOCK_PACKET", 11) == 0) { *valp = SOCK_PACKET;
return 0; }
4921 #ifdef SOCK_SEQPACKET
4922 if (
memcmp(
str,
"SOCK_SEQPACKET", 14) == 0) { *valp = SOCK_SEQPACKET;
return 0; }
4927 if (!
str || !valp) {}
4942 if (
memcmp(
str,
"ND", 2) == 0) { *valp = IPPROTO_ND;
return 0; }
4945 if (
memcmp(
str,
"TP", 2) == 0) { *valp = IPPROTO_TP;
return 0; }
4948 if (
memcmp(
str,
"AH", 2) == 0) { *valp = IPPROTO_AH;
return 0; }
4954 if (
memcmp(
str,
"GGP", 3) == 0) { *valp = IPPROTO_GGP;
return 0; }
4960 if (
memcmp(
str,
"EGP", 3) == 0) { *valp = IPPROTO_EGP;
return 0; }
4963 if (
memcmp(
str,
"PUP", 3) == 0) { *valp = IPPROTO_PUP;
return 0; }
4969 if (
memcmp(
str,
"IDP", 3) == 0) { *valp = IPPROTO_IDP;
return 0; }
4972 if (
memcmp(
str,
"XTP", 3) == 0) { *valp = IPPROTO_XTP;
return 0; }
4975 if (
memcmp(
str,
"EON", 3) == 0) { *valp = IPPROTO_EON;
return 0; }
4978 if (
memcmp(
str,
"BIP", 3) == 0) { *valp = IPPROTO_BIP;
return 0; }
4981 if (
memcmp(
str,
"ESP", 3) == 0) { *valp = IPPROTO_ESP;
return 0; }
4987 if (
memcmp(
str,
"MAX", 3) == 0) { *valp = IPPROTO_MAX;
return 0; }
4996 if (
memcmp(
str,
"IGMP", 4) == 0) { *valp = IPPROTO_IGMP;
return 0; }
4999 if (
memcmp(
str,
"IPV6", 4) == 0) { *valp = IPPROTO_IPV6;
return 0; }
5002 if (
memcmp(
str,
"NONE", 4) == 0) { *valp = IPPROTO_NONE;
return 0; }
5007 #ifdef IPPROTO_HELLO
5008 if (
memcmp(
str,
"HELLO", 5) == 0) { *valp = IPPROTO_HELLO;
return 0; }
5013 #ifdef IPPROTO_ICMPV6
5014 if (
memcmp(
str,
"ICMPV6", 6) == 0) { *valp = IPPROTO_ICMPV6;
return 0; }
5019 #ifdef IPPROTO_DSTOPTS
5020 if (
memcmp(
str,
"DSTOPTS", 7) == 0) { *valp = IPPROTO_DSTOPTS;
return 0; }
5022 #ifdef IPPROTO_HOPOPTS
5023 if (
memcmp(
str,
"HOPOPTS", 7) == 0) { *valp = IPPROTO_HOPOPTS;
return 0; }
5025 #ifdef IPPROTO_ROUTING
5026 if (
memcmp(
str,
"ROUTING", 7) == 0) { *valp = IPPROTO_ROUTING;
return 0; }
5031 #ifdef IPPROTO_FRAGMENT
5032 if (
memcmp(
str,
"FRAGMENT", 8) == 0) { *valp = IPPROTO_FRAGMENT;
return 0; }
5041 if (
memcmp(
str,
"IPPROTO_ND", 10) == 0) { *valp = IPPROTO_ND;
return 0; }
5044 if (
memcmp(
str,
"IPPROTO_TP", 10) == 0) { *valp = IPPROTO_TP;
return 0; }
5047 if (
memcmp(
str,
"IPPROTO_AH", 10) == 0) { *valp = IPPROTO_AH;
return 0; }
5053 if (
memcmp(
str,
"IPPROTO_GGP", 11) == 0) { *valp = IPPROTO_GGP;
return 0; }
5059 if (
memcmp(
str,
"IPPROTO_EGP", 11) == 0) { *valp = IPPROTO_EGP;
return 0; }
5062 if (
memcmp(
str,
"IPPROTO_PUP", 11) == 0) { *valp = IPPROTO_PUP;
return 0; }
5068 if (
memcmp(
str,
"IPPROTO_IDP", 11) == 0) { *valp = IPPROTO_IDP;
return 0; }
5071 if (
memcmp(
str,
"IPPROTO_XTP", 11) == 0) { *valp = IPPROTO_XTP;
return 0; }
5074 if (
memcmp(
str,
"IPPROTO_EON", 11) == 0) { *valp = IPPROTO_EON;
return 0; }
5077 if (
memcmp(
str,
"IPPROTO_BIP", 11) == 0) { *valp = IPPROTO_BIP;
return 0; }
5080 if (
memcmp(
str,
"IPPROTO_ESP", 11) == 0) { *valp = IPPROTO_ESP;
return 0; }
5086 if (
memcmp(
str,
"IPPROTO_MAX", 11) == 0) { *valp = IPPROTO_MAX;
return 0; }
5095 if (
memcmp(
str,
"IPPROTO_IGMP", 12) == 0) { *valp = IPPROTO_IGMP;
return 0; }
5098 if (
memcmp(
str,
"IPPROTO_IPV6", 12) == 0) { *valp = IPPROTO_IPV6;
return 0; }
5101 if (
memcmp(
str,
"IPPROTO_NONE", 12) == 0) { *valp = IPPROTO_NONE;
return 0; }
5106 #ifdef IPPROTO_HELLO
5107 if (
memcmp(
str,
"IPPROTO_HELLO", 13) == 0) { *valp = IPPROTO_HELLO;
return 0; }
5112 #ifdef IPPROTO_ICMPV6
5113 if (
memcmp(
str,
"IPPROTO_ICMPV6", 14) == 0) { *valp = IPPROTO_ICMPV6;
return 0; }
5118 #ifdef IPPROTO_DSTOPTS
5119 if (
memcmp(
str,
"IPPROTO_DSTOPTS", 15) == 0) { *valp = IPPROTO_DSTOPTS;
return 0; }
5121 #ifdef IPPROTO_HOPOPTS
5122 if (
memcmp(
str,
"IPPROTO_HOPOPTS", 15) == 0) { *valp = IPPROTO_HOPOPTS;
return 0; }
5124 #ifdef IPPROTO_ROUTING
5125 if (
memcmp(
str,
"IPPROTO_ROUTING", 15) == 0) { *valp = IPPROTO_ROUTING;
return 0; }
5130 #ifdef IPPROTO_FRAGMENT
5131 if (
memcmp(
str,
"IPPROTO_FRAGMENT", 16) == 0) { *valp = IPPROTO_FRAGMENT;
return 0; }
5136 if (!
str || !valp) {}
5148 if (
memcmp(
str,
"SOCKET", 6) == 0) { *valp = SOL_SOCKET;
return 0; }
5154 if (
memcmp(
str,
"SOL_SOCKET", 10) == 0) { *valp = SOL_SOCKET;
return 0; }
5159 if (!
str || !valp) {}
5174 if (
memcmp(
str,
"ND", 2) == 0) { *valp = IPPROTO_ND;
return 0; }
5177 if (
memcmp(
str,
"TP", 2) == 0) { *valp = IPPROTO_TP;
return 0; }
5180 if (
memcmp(
str,
"AH", 2) == 0) { *valp = IPPROTO_AH;
return 0; }
5186 if (
memcmp(
str,
"GGP", 3) == 0) { *valp = IPPROTO_GGP;
return 0; }
5192 if (
memcmp(
str,
"EGP", 3) == 0) { *valp = IPPROTO_EGP;
return 0; }
5195 if (
memcmp(
str,
"PUP", 3) == 0) { *valp = IPPROTO_PUP;
return 0; }
5201 if (
memcmp(
str,
"IDP", 3) == 0) { *valp = IPPROTO_IDP;
return 0; }
5204 if (
memcmp(
str,
"XTP", 3) == 0) { *valp = IPPROTO_XTP;
return 0; }
5207 if (
memcmp(
str,
"EON", 3) == 0) { *valp = IPPROTO_EON;
return 0; }
5210 if (
memcmp(
str,
"BIP", 3) == 0) { *valp = IPPROTO_BIP;
return 0; }
5213 if (
memcmp(
str,
"ESP", 3) == 0) { *valp = IPPROTO_ESP;
return 0; }
5219 if (
memcmp(
str,
"MAX", 3) == 0) { *valp = IPPROTO_MAX;
return 0; }
5228 if (
memcmp(
str,
"IGMP", 4) == 0) { *valp = IPPROTO_IGMP;
return 0; }
5231 if (
memcmp(
str,
"IPV6", 4) == 0) { *valp = IPPROTO_IPV6;
return 0; }
5234 if (
memcmp(
str,
"NONE", 4) == 0) { *valp = IPPROTO_NONE;
return 0; }
5239 #ifdef IPPROTO_HELLO
5240 if (
memcmp(
str,
"HELLO", 5) == 0) { *valp = IPPROTO_HELLO;
return 0; }
5246 if (
memcmp(
str,
"SOCKET", 6) == 0) { *valp = SOL_SOCKET;
return 0; }
5248 #ifdef IPPROTO_ICMPV6
5249 if (
memcmp(
str,
"ICMPV6", 6) == 0) { *valp = IPPROTO_ICMPV6;
return 0; }
5254 #ifdef IPPROTO_DSTOPTS
5255 if (
memcmp(
str,
"DSTOPTS", 7) == 0) { *valp = IPPROTO_DSTOPTS;
return 0; }
5257 #ifdef IPPROTO_HOPOPTS
5258 if (
memcmp(
str,
"HOPOPTS", 7) == 0) { *valp = IPPROTO_HOPOPTS;
return 0; }
5260 #ifdef IPPROTO_ROUTING
5261 if (
memcmp(
str,
"ROUTING", 7) == 0) { *valp = IPPROTO_ROUTING;
return 0; }
5266 #ifdef IPPROTO_FRAGMENT
5267 if (
memcmp(
str,
"FRAGMENT", 8) == 0) { *valp = IPPROTO_FRAGMENT;
return 0; }
5273 if (
memcmp(
str,
"SOL_SOCKET", 10) == 0) { *valp = SOL_SOCKET;
return 0; }
5279 if (
memcmp(
str,
"IPPROTO_ND", 10) == 0) { *valp = IPPROTO_ND;
return 0; }
5282 if (
memcmp(
str,
"IPPROTO_TP", 10) == 0) { *valp = IPPROTO_TP;
return 0; }
5285 if (
memcmp(
str,
"IPPROTO_AH", 10) == 0) { *valp = IPPROTO_AH;
return 0; }
5291 if (
memcmp(
str,
"IPPROTO_GGP", 11) == 0) { *valp = IPPROTO_GGP;
return 0; }
5297 if (
memcmp(
str,
"IPPROTO_EGP", 11) == 0) { *valp = IPPROTO_EGP;
return 0; }
5300 if (
memcmp(
str,
"IPPROTO_PUP", 11) == 0) { *valp = IPPROTO_PUP;
return 0; }
5306 if (
memcmp(
str,
"IPPROTO_IDP", 11) == 0) { *valp = IPPROTO_IDP;
return 0; }
5309 if (
memcmp(
str,
"IPPROTO_XTP", 11) == 0) { *valp = IPPROTO_XTP;
return 0; }
5312 if (
memcmp(
str,
"IPPROTO_EON", 11) == 0) { *valp = IPPROTO_EON;
return 0; }
5315 if (
memcmp(
str,
"IPPROTO_BIP", 11) == 0) { *valp = IPPROTO_BIP;
return 0; }
5318 if (
memcmp(
str,
"IPPROTO_ESP", 11) == 0) { *valp = IPPROTO_ESP;
return 0; }
5324 if (
memcmp(
str,
"IPPROTO_MAX", 11) == 0) { *valp = IPPROTO_MAX;
return 0; }
5333 if (
memcmp(
str,
"IPPROTO_IGMP", 12) == 0) { *valp = IPPROTO_IGMP;
return 0; }
5336 if (
memcmp(
str,
"IPPROTO_IPV6", 12) == 0) { *valp = IPPROTO_IPV6;
return 0; }
5339 if (
memcmp(
str,
"IPPROTO_NONE", 12) == 0) { *valp = IPPROTO_NONE;
return 0; }
5344 #ifdef IPPROTO_HELLO
5345 if (
memcmp(
str,
"IPPROTO_HELLO", 13) == 0) { *valp = IPPROTO_HELLO;
return 0; }
5350 #ifdef IPPROTO_ICMPV6
5351 if (
memcmp(
str,
"IPPROTO_ICMPV6", 14) == 0) { *valp = IPPROTO_ICMPV6;
return 0; }
5356 #ifdef IPPROTO_DSTOPTS
5357 if (
memcmp(
str,
"IPPROTO_DSTOPTS", 15) == 0) { *valp = IPPROTO_DSTOPTS;
return 0; }
5359 #ifdef IPPROTO_HOPOPTS
5360 if (
memcmp(
str,
"IPPROTO_HOPOPTS", 15) == 0) { *valp = IPPROTO_HOPOPTS;
return 0; }
5362 #ifdef IPPROTO_ROUTING
5363 if (
memcmp(
str,
"IPPROTO_ROUTING", 15) == 0) { *valp = IPPROTO_ROUTING;
return 0; }
5368 #ifdef IPPROTO_FRAGMENT
5369 if (
memcmp(
str,
"IPPROTO_FRAGMENT", 16) == 0) { *valp = IPPROTO_FRAGMENT;
return 0; }
5374 if (!
str || !valp) {}
5386 if (
memcmp(
str,
"NKE", 3) == 0) { *valp = SO_NKE;
return 0; }
5392 if (
memcmp(
str,
"TYPE", 4) == 0) { *valp = SO_TYPE;
return 0; }
5395 if (
memcmp(
str,
"MARK", 4) == 0) { *valp = SO_MARK;
return 0; }
5401 if (
memcmp(
str,
"DEBUG", 5) == 0) { *valp = SO_DEBUG;
return 0; }
5404 if (
memcmp(
str,
"ERROR", 5) == 0) { *valp = SO_ERROR;
return 0; }
5407 if (
memcmp(
str,
"NREAD", 5) == 0) { *valp = SO_NREAD;
return 0; }
5410 if (
memcmp(
str,
"NOFCS", 5) == 0) { *valp = SO_NOFCS;
return 0; }
5416 if (
memcmp(
str,
"SO_NKE", 6) == 0) { *valp = SO_NKE;
return 0; }
5419 if (
memcmp(
str,
"SNDBUF", 6) == 0) { *valp = SO_SNDBUF;
return 0; }
5422 if (
memcmp(
str,
"RCVBUF", 6) == 0) { *valp = SO_RCVBUF;
return 0; }
5425 if (
memcmp(
str,
"LINGER", 6) == 0) { *valp = SO_LINGER;
return 0; }
5428 if (
memcmp(
str,
"DOMAIN", 6) == 0) { *valp = SO_DOMAIN;
return 0; }
5434 if (
memcmp(
str,
"SO_TYPE", 7) == 0) { *valp = SO_TYPE;
return 0; }
5437 if (
memcmp(
str,
"SO_MARK", 7) == 0) { *valp = SO_MARK;
return 0; }
5440 if (
memcmp(
str,
"BINTIME", 7) == 0) { *valp = SO_BINTIME;
return 0; }
5443 if (
memcmp(
str,
"PEERSEC", 7) == 0) { *valp = SO_PEERSEC;
return 0; }
5446 if (
memcmp(
str,
"PASSSEC", 7) == 0) { *valp = SO_PASSSEC;
return 0; }
5452 if (
memcmp(
str,
"SO_DEBUG", 8) == 0) { *valp = SO_DEBUG;
return 0; }
5455 if (
memcmp(
str,
"SO_ERROR", 8) == 0) { *valp = SO_ERROR;
return 0; }
5458 if (
memcmp(
str,
"SO_NREAD", 8) == 0) { *valp = SO_NREAD;
return 0; }
5461 if (
memcmp(
str,
"SO_NOFCS", 8) == 0) { *valp = SO_NOFCS;
return 0; }
5464 if (
memcmp(
str,
"NO_CHECK", 8) == 0) { *valp = SO_NO_CHECK;
return 0; }
5467 if (
memcmp(
str,
"PRIORITY", 8) == 0) { *valp = SO_PRIORITY;
return 0; }
5470 if (
memcmp(
str,
"PASSCRED", 8) == 0) { *valp = SO_PASSCRED;
return 0; }
5473 if (
memcmp(
str,
"PEERCRED", 8) == 0) { *valp = SO_PEERCRED;
return 0; }
5476 if (
memcmp(
str,
"RCVLOWAT", 8) == 0) { *valp = SO_RCVLOWAT;
return 0; }
5479 if (
memcmp(
str,
"SNDLOWAT", 8) == 0) { *valp = SO_SNDLOWAT;
return 0; }
5482 if (
memcmp(
str,
"RCVTIMEO", 8) == 0) { *valp = SO_RCVTIMEO;
return 0; }
5485 if (
memcmp(
str,
"SNDTIMEO", 8) == 0) { *valp = SO_SNDTIMEO;
return 0; }
5488 if (
memcmp(
str,
"WANTMORE", 8) == 0) { *valp = SO_WANTMORE;
return 0; }
5491 if (
memcmp(
str,
"PEERNAME", 8) == 0) { *valp = SO_PEERNAME;
return 0; }
5494 if (
memcmp(
str,
"ALLZONES", 8) == 0) { *valp = SO_ALLZONES;
return 0; }
5497 if (
memcmp(
str,
"PROTOCOL", 8) == 0) { *valp = SO_PROTOCOL;
return 0; }
5500 if (
memcmp(
str,
"RXQ_OVFL", 8) == 0) { *valp = SO_RXQ_OVFL;
return 0; }
5503 if (
memcmp(
str,
"PEEK_OFF", 8) == 0) { *valp = SO_PEEK_OFF;
return 0; }
5509 if (
memcmp(
str,
"SO_SNDBUF", 9) == 0) { *valp = SO_SNDBUF;
return 0; }
5512 if (
memcmp(
str,
"SO_RCVBUF", 9) == 0) { *valp = SO_RCVBUF;
return 0; }
5515 if (
memcmp(
str,
"SO_LINGER", 9) == 0) { *valp = SO_LINGER;
return 0; }
5518 if (
memcmp(
str,
"SO_DOMAIN", 9) == 0) { *valp = SO_DOMAIN;
return 0; }
5521 if (
memcmp(
str,
"REUSEADDR", 9) == 0) { *valp = SO_REUSEADDR;
return 0; }
5524 if (
memcmp(
str,
"REUSEPORT", 9) == 0) { *valp = SO_REUSEPORT;
return 0; }
5527 if (
memcmp(
str,
"DONTROUTE", 9) == 0) { *valp = SO_DONTROUTE;
return 0; }
5530 if (
memcmp(
str,
"BROADCAST", 9) == 0) { *valp = SO_BROADCAST;
return 0; }
5533 if (
memcmp(
str,
"KEEPALIVE", 9) == 0) { *valp = SO_KEEPALIVE;
return 0; }
5536 if (
memcmp(
str,
"OOBINLINE", 9) == 0) { *valp = SO_OOBINLINE;
return 0; }
5539 if (
memcmp(
str,
"DONTTRUNC", 9) == 0) { *valp = SO_DONTTRUNC;
return 0; }
5542 if (
memcmp(
str,
"NOSIGPIPE", 9) == 0) { *valp = SO_NOSIGPIPE;
return 0; }
5545 if (
memcmp(
str,
"TIMESTAMP", 9) == 0) { *valp = SO_TIMESTAMP;
return 0; }
5548 if (
memcmp(
str,
"RECVUCRED", 9) == 0) { *valp = SO_RECVUCRED;
return 0; }
5551 if (
memcmp(
str,
"BUSY_POLL", 9) == 0) { *valp = SO_BUSY_POLL;
return 0; }
5557 if (
memcmp(
str,
"SO_BINTIME", 10) == 0) { *valp = SO_BINTIME;
return 0; }
5560 if (
memcmp(
str,
"SO_PEERSEC", 10) == 0) { *valp = SO_PEERSEC;
return 0; }
5563 if (
memcmp(
str,
"SO_PASSSEC", 10) == 0) { *valp = SO_PASSSEC;
return 0; }
5565 #ifdef SO_ACCEPTCONN
5566 if (
memcmp(
str,
"ACCEPTCONN", 10) == 0) { *valp = SO_ACCEPTCONN;
return 0; }
5568 #ifdef SO_GET_FILTER
5569 if (
memcmp(
str,
"GET_FILTER", 10) == 0) { *valp = SO_GET_FILTER;
return 0; }
5571 #ifdef SO_MAC_EXEMPT
5572 if (
memcmp(
str,
"MAC_EXEMPT", 10) == 0) { *valp = SO_MAC_EXEMPT;
return 0; }
5578 if (
memcmp(
str,
"SO_NO_CHECK", 11) == 0) { *valp = SO_NO_CHECK;
return 0; }
5581 if (
memcmp(
str,
"SO_PRIORITY", 11) == 0) { *valp = SO_PRIORITY;
return 0; }
5584 if (
memcmp(
str,
"SO_PASSCRED", 11) == 0) { *valp = SO_PASSCRED;
return 0; }
5587 if (
memcmp(
str,
"SO_PEERCRED", 11) == 0) { *valp = SO_PEERCRED;
return 0; }
5590 if (
memcmp(
str,
"SO_RCVLOWAT", 11) == 0) { *valp = SO_RCVLOWAT;
return 0; }
5593 if (
memcmp(
str,
"SO_SNDLOWAT", 11) == 0) { *valp = SO_SNDLOWAT;
return 0; }
5596 if (
memcmp(
str,
"SO_RCVTIMEO", 11) == 0) { *valp = SO_RCVTIMEO;
return 0; }
5599 if (
memcmp(
str,
"SO_SNDTIMEO", 11) == 0) { *valp = SO_SNDTIMEO;
return 0; }
5602 if (
memcmp(
str,
"SO_WANTMORE", 11) == 0) { *valp = SO_WANTMORE;
return 0; }
5605 if (
memcmp(
str,
"SO_PEERNAME", 11) == 0) { *valp = SO_PEERNAME;
return 0; }
5608 if (
memcmp(
str,
"SO_ALLZONES", 11) == 0) { *valp = SO_ALLZONES;
return 0; }
5611 if (
memcmp(
str,
"SO_PROTOCOL", 11) == 0) { *valp = SO_PROTOCOL;
return 0; }
5614 if (
memcmp(
str,
"SO_RXQ_OVFL", 11) == 0) { *valp = SO_RXQ_OVFL;
return 0; }
5617 if (
memcmp(
str,
"SO_PEEK_OFF", 11) == 0) { *valp = SO_PEEK_OFF;
return 0; }
5619 #ifdef SO_SNDBUFFORCE
5620 if (
memcmp(
str,
"SNDBUFFORCE", 11) == 0) { *valp = SO_SNDBUFFORCE;
return 0; }
5622 #ifdef SO_RCVBUFFORCE
5623 if (
memcmp(
str,
"RCVBUFFORCE", 11) == 0) { *valp = SO_RCVBUFFORCE;
return 0; }
5625 #ifdef SO_USELOOPBACK
5626 if (
memcmp(
str,
"USELOOPBACK", 11) == 0) { *valp = SO_USELOOPBACK;
return 0; }
5628 #ifdef SO_WANTOOBFLAG
5629 if (
memcmp(
str,
"WANTOOBFLAG", 11) == 0) { *valp = SO_WANTOOBFLAG;
return 0; }
5631 #ifdef SO_TIMESTAMPNS
5632 if (
memcmp(
str,
"TIMESTAMPNS", 11) == 0) { *valp = SO_TIMESTAMPNS;
return 0; }
5634 #ifdef SO_WIFI_STATUS
5635 if (
memcmp(
str,
"WIFI_STATUS", 11) == 0) { *valp = SO_WIFI_STATUS;
return 0; }
5637 #ifdef SO_LOCK_FILTER
5638 if (
memcmp(
str,
"LOCK_FILTER", 11) == 0) { *valp = SO_LOCK_FILTER;
return 0; }
5644 if (
memcmp(
str,
"SO_REUSEADDR", 12) == 0) { *valp = SO_REUSEADDR;
return 0; }
5647 if (
memcmp(
str,
"SO_REUSEPORT", 12) == 0) { *valp = SO_REUSEPORT;
return 0; }
5650 if (
memcmp(
str,
"SO_DONTROUTE", 12) == 0) { *valp = SO_DONTROUTE;
return 0; }
5653 if (
memcmp(
str,
"SO_BROADCAST", 12) == 0) { *valp = SO_BROADCAST;
return 0; }
5656 if (
memcmp(
str,
"SO_KEEPALIVE", 12) == 0) { *valp = SO_KEEPALIVE;
return 0; }
5659 if (
memcmp(
str,
"SO_OOBINLINE", 12) == 0) { *valp = SO_OOBINLINE;
return 0; }
5662 if (
memcmp(
str,
"SO_DONTTRUNC", 12) == 0) { *valp = SO_DONTTRUNC;
return 0; }
5665 if (
memcmp(
str,
"SO_NOSIGPIPE", 12) == 0) { *valp = SO_NOSIGPIPE;
return 0; }
5668 if (
memcmp(
str,
"SO_TIMESTAMP", 12) == 0) { *valp = SO_TIMESTAMP;
return 0; }
5671 if (
memcmp(
str,
"SO_RECVUCRED", 12) == 0) { *valp = SO_RECVUCRED;
return 0; }
5674 if (
memcmp(
str,
"SO_BUSY_POLL", 12) == 0) { *valp = SO_BUSY_POLL;
return 0; }
5676 #ifdef SO_ACCEPTFILTER
5677 if (
memcmp(
str,
"ACCEPTFILTER", 12) == 0) { *valp = SO_ACCEPTFILTER;
return 0; }
5679 #ifdef SO_BINDTODEVICE
5680 if (
memcmp(
str,
"BINDTODEVICE", 12) == 0) { *valp = SO_BINDTODEVICE;
return 0; }
5682 #ifdef SO_TIMESTAMPING
5683 if (
memcmp(
str,
"TIMESTAMPING", 12) == 0) { *valp = SO_TIMESTAMPING;
return 0; }
5688 #ifdef SO_ACCEPTCONN
5689 if (
memcmp(
str,
"SO_ACCEPTCONN", 13) == 0) { *valp = SO_ACCEPTCONN;
return 0; }
5691 #ifdef SO_GET_FILTER
5692 if (
memcmp(
str,
"SO_GET_FILTER", 13) == 0) { *valp = SO_GET_FILTER;
return 0; }
5694 #ifdef SO_MAC_EXEMPT
5695 if (
memcmp(
str,
"SO_MAC_EXEMPT", 13) == 0) { *valp = SO_MAC_EXEMPT;
return 0; }
5697 #ifdef SO_ATTACH_FILTER
5698 if (
memcmp(
str,
"ATTACH_FILTER", 13) == 0) { *valp = SO_ATTACH_FILTER;
return 0; }
5700 #ifdef SO_DETACH_FILTER
5701 if (
memcmp(
str,
"DETACH_FILTER", 13) == 0) { *valp = SO_DETACH_FILTER;
return 0; }
5706 #ifdef SO_SNDBUFFORCE
5707 if (
memcmp(
str,
"SO_SNDBUFFORCE", 14) == 0) { *valp = SO_SNDBUFFORCE;
return 0; }
5709 #ifdef SO_RCVBUFFORCE
5710 if (
memcmp(
str,
"SO_RCVBUFFORCE", 14) == 0) { *valp = SO_RCVBUFFORCE;
return 0; }
5712 #ifdef SO_USELOOPBACK
5713 if (
memcmp(
str,
"SO_USELOOPBACK", 14) == 0) { *valp = SO_USELOOPBACK;
return 0; }
5715 #ifdef SO_WANTOOBFLAG
5716 if (
memcmp(
str,
"SO_WANTOOBFLAG", 14) == 0) { *valp = SO_WANTOOBFLAG;
return 0; }
5718 #ifdef SO_TIMESTAMPNS
5719 if (
memcmp(
str,
"SO_TIMESTAMPNS", 14) == 0) { *valp = SO_TIMESTAMPNS;
return 0; }
5721 #ifdef SO_WIFI_STATUS
5722 if (
memcmp(
str,
"SO_WIFI_STATUS", 14) == 0) { *valp = SO_WIFI_STATUS;
return 0; }
5724 #ifdef SO_LOCK_FILTER
5725 if (
memcmp(
str,
"SO_LOCK_FILTER", 14) == 0) { *valp = SO_LOCK_FILTER;
return 0; }
5727 #ifdef SO_BPF_EXTENSIONS
5728 if (
memcmp(
str,
"BPF_EXTENSIONS", 14) == 0) { *valp = SO_BPF_EXTENSIONS;
return 0; }
5733 #ifdef SO_ACCEPTFILTER
5734 if (
memcmp(
str,
"SO_ACCEPTFILTER", 15) == 0) { *valp = SO_ACCEPTFILTER;
return 0; }
5736 #ifdef SO_BINDTODEVICE
5737 if (
memcmp(
str,
"SO_BINDTODEVICE", 15) == 0) { *valp = SO_BINDTODEVICE;
return 0; }
5739 #ifdef SO_TIMESTAMPING
5740 if (
memcmp(
str,
"SO_TIMESTAMPING", 15) == 0) { *valp = SO_TIMESTAMPING;
return 0; }
5742 #ifdef SO_MAX_PACING_RATE
5743 if (
memcmp(
str,
"MAX_PACING_RATE", 15) == 0) { *valp = SO_MAX_PACING_RATE;
return 0; }
5748 #ifdef SO_ATTACH_FILTER
5749 if (
memcmp(
str,
"SO_ATTACH_FILTER", 16) == 0) { *valp = SO_ATTACH_FILTER;
return 0; }
5751 #ifdef SO_DETACH_FILTER
5752 if (
memcmp(
str,
"SO_DETACH_FILTER", 16) == 0) { *valp = SO_DETACH_FILTER;
return 0; }
5754 #ifdef SO_SELECT_ERR_QUEUE
5755 if (
memcmp(
str,
"SELECT_ERR_QUEUE", 16) == 0) { *valp = SO_SELECT_ERR_QUEUE;
return 0; }
5760 #ifdef SO_BPF_EXTENSIONS
5761 if (
memcmp(
str,
"SO_BPF_EXTENSIONS", 17) == 0) { *valp = SO_BPF_EXTENSIONS;
return 0; }
5766 #ifdef SO_MAX_PACING_RATE
5767 if (
memcmp(
str,
"SO_MAX_PACING_RATE", 18) == 0) { *valp = SO_MAX_PACING_RATE;
return 0; }
5772 #ifdef SO_SELECT_ERR_QUEUE
5773 if (
memcmp(
str,
"SO_SELECT_ERR_QUEUE", 19) == 0) { *valp = SO_SELECT_ERR_QUEUE;
return 0; }
5778 #ifdef SO_SECURITY_AUTHENTICATION
5779 if (
memcmp(
str,
"SECURITY_AUTHENTICATION", 23) == 0) { *valp = SO_SECURITY_AUTHENTICATION;
return 0; }
5784 #ifdef SO_SECURITY_AUTHENTICATION
5785 if (
memcmp(
str,
"SO_SECURITY_AUTHENTICATION", 26) == 0) { *valp = SO_SECURITY_AUTHENTICATION;
return 0; }
5790 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
5791 if (
memcmp(
str,
"SECURITY_ENCRYPTION_NETWORK", 27) == 0) { *valp = SO_SECURITY_ENCRYPTION_NETWORK;
return 0; }
5796 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
5797 if (
memcmp(
str,
"SECURITY_ENCRYPTION_TRANSPORT", 29) == 0) { *valp = SO_SECURITY_ENCRYPTION_TRANSPORT;
return 0; }
5802 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
5803 if (
memcmp(
str,
"SO_SECURITY_ENCRYPTION_NETWORK", 30) == 0) { *valp = SO_SECURITY_ENCRYPTION_NETWORK;
return 0; }
5808 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
5809 if (
memcmp(
str,
"SO_SECURITY_ENCRYPTION_TRANSPORT", 32) == 0) { *valp = SO_SECURITY_ENCRYPTION_TRANSPORT;
return 0; }
5814 if (!
str || !valp) {}
5826 if (
memcmp(
str,
"TOS", 3) == 0) { *valp = IP_TOS;
return 0; }
5829 if (
memcmp(
str,
"TTL", 3) == 0) { *valp = IP_TTL;
return 0; }
5832 if (
memcmp(
str,
"MTU", 3) == 0) { *valp = IP_MTU;
return 0; }
5838 if (
memcmp(
str,
"IP_TOS", 6) == 0) { *valp = IP_TOS;
return 0; }
5841 if (
memcmp(
str,
"IP_TTL", 6) == 0) { *valp = IP_TTL;
return 0; }
5844 if (
memcmp(
str,
"IP_MTU", 6) == 0) { *valp = IP_MTU;
return 0; }
5847 if (
memcmp(
str,
"MINTTL", 6) == 0) { *valp = IP_MINTTL;
return 0; }
5850 if (
memcmp(
str,
"RECVIF", 6) == 0) { *valp = IP_RECVIF;
return 0; }
5856 if (
memcmp(
str,
"OPTIONS", 7) == 0) { *valp = IP_OPTIONS;
return 0; }
5859 if (
memcmp(
str,
"HDRINCL", 7) == 0) { *valp = IP_HDRINCL;
return 0; }
5862 if (
memcmp(
str,
"RETOPTS", 7) == 0) { *valp = IP_RETOPTS;
return 0; }
5865 if (
memcmp(
str,
"RECVTTL", 7) == 0) { *valp = IP_RECVTTL;
return 0; }
5868 if (
memcmp(
str,
"PKTINFO", 7) == 0) { *valp = IP_PKTINFO;
return 0; }
5871 if (
memcmp(
str,
"RECVERR", 7) == 0) { *valp = IP_RECVERR;
return 0; }
5874 if (
memcmp(
str,
"RECVTOS", 7) == 0) { *valp = IP_RECVTOS;
return 0; }
5877 if (
memcmp(
str,
"PASSSEC", 7) == 0) { *valp = IP_PASSSEC;
return 0; }
5883 if (
memcmp(
str,
"RECVOPTS", 8) == 0) { *valp = IP_RECVOPTS;
return 0; }
5886 if (
memcmp(
str,
"DONTFRAG", 8) == 0) { *valp = IP_DONTFRAG;
return 0; }
5889 if (
memcmp(
str,
"RECVSLLA", 8) == 0) { *valp = IP_RECVSLLA;
return 0; }
5892 if (
memcmp(
str,
"FREEBIND", 8) == 0) { *valp = IP_FREEBIND;
return 0; }
5895 if (
memcmp(
str,
"MSFILTER", 8) == 0) { *valp = IP_MSFILTER;
return 0; }
5901 if (
memcmp(
str,
"IP_MINTTL", 9) == 0) { *valp = IP_MINTTL;
return 0; }
5904 if (
memcmp(
str,
"IP_RECVIF", 9) == 0) { *valp = IP_RECVIF;
return 0; }
5907 if (
memcmp(
str,
"ONESBCAST", 9) == 0) { *valp = IP_ONESBCAST;
return 0; }
5910 if (
memcmp(
str,
"PORTRANGE", 9) == 0) { *valp = IP_PORTRANGE;
return 0; }
5916 if (
memcmp(
str,
"IP_OPTIONS", 10) == 0) { *valp = IP_OPTIONS;
return 0; }
5919 if (
memcmp(
str,
"IP_HDRINCL", 10) == 0) { *valp = IP_HDRINCL;
return 0; }
5922 if (
memcmp(
str,
"IP_RETOPTS", 10) == 0) { *valp = IP_RETOPTS;
return 0; }
5925 if (
memcmp(
str,
"IP_RECVTTL", 10) == 0) { *valp = IP_RECVTTL;
return 0; }
5928 if (
memcmp(
str,
"IP_PKTINFO", 10) == 0) { *valp = IP_PKTINFO;
return 0; }
5931 if (
memcmp(
str,
"IP_RECVERR", 10) == 0) { *valp = IP_RECVERR;
return 0; }
5934 if (
memcmp(
str,
"IP_RECVTOS", 10) == 0) { *valp = IP_RECVTOS;
return 0; }
5937 if (
memcmp(
str,
"IP_PASSSEC", 10) == 0) { *valp = IP_PASSSEC;
return 0; }
5939 #ifdef IP_PKTOPTIONS
5940 if (
memcmp(
str,
"PKTOPTIONS", 10) == 0) { *valp = IP_PKTOPTIONS;
return 0; }
5946 if (
memcmp(
str,
"IP_RECVOPTS", 11) == 0) { *valp = IP_RECVOPTS;
return 0; }
5949 if (
memcmp(
str,
"IP_DONTFRAG", 11) == 0) { *valp = IP_DONTFRAG;
return 0; }
5952 if (
memcmp(
str,
"IP_RECVSLLA", 11) == 0) { *valp = IP_RECVSLLA;
return 0; }
5955 if (
memcmp(
str,
"IP_FREEBIND", 11) == 0) { *valp = IP_FREEBIND;
return 0; }
5958 if (
memcmp(
str,
"IP_MSFILTER", 11) == 0) { *valp = IP_MSFILTER;
return 0; }
5960 #ifdef IP_RECVRETOPTS
5961 if (
memcmp(
str,
"RECVRETOPTS", 11) == 0) { *valp = IP_RECVRETOPTS;
return 0; }
5963 #ifdef IP_RECVDSTADDR
5964 if (
memcmp(
str,
"RECVDSTADDR", 11) == 0) { *valp = IP_RECVDSTADDR;
return 0; }
5966 #ifdef IP_SENDSRCADDR
5967 if (
memcmp(
str,
"SENDSRCADDR", 11) == 0) { *valp = IP_SENDSRCADDR;
return 0; }
5969 #ifdef IP_XFRM_POLICY
5970 if (
memcmp(
str,
"XFRM_POLICY", 11) == 0) { *valp = IP_XFRM_POLICY;
return 0; }
5972 #ifdef IP_TRANSPARENT
5973 if (
memcmp(
str,
"TRANSPARENT", 11) == 0) { *valp = IP_TRANSPARENT;
return 0; }
5975 #ifdef IP_PMTUDISC_DO
5976 if (
memcmp(
str,
"PMTUDISC_DO", 11) == 0) { *valp = IP_PMTUDISC_DO;
return 0; }
5982 if (
memcmp(
str,
"IP_ONESBCAST", 12) == 0) { *valp = IP_ONESBCAST;
return 0; }
5985 if (
memcmp(
str,
"IP_PORTRANGE", 12) == 0) { *valp = IP_PORTRANGE;
return 0; }
5987 #ifdef IP_MULTICAST_IF
5988 if (
memcmp(
str,
"MULTICAST_IF", 12) == 0) { *valp = IP_MULTICAST_IF;
return 0; }
5990 #ifdef IP_ROUTER_ALERT
5991 if (
memcmp(
str,
"ROUTER_ALERT", 12) == 0) { *valp = IP_ROUTER_ALERT;
return 0; }
5993 #ifdef IP_MTU_DISCOVER
5994 if (
memcmp(
str,
"MTU_DISCOVER", 12) == 0) { *valp = IP_MTU_DISCOVER;
return 0; }
5996 #ifdef IP_IPSEC_POLICY
5997 if (
memcmp(
str,
"IPSEC_POLICY", 12) == 0) { *valp = IP_IPSEC_POLICY;
return 0; }
5999 #ifdef IP_BLOCK_SOURCE
6000 if (
memcmp(
str,
"BLOCK_SOURCE", 12) == 0) { *valp = IP_BLOCK_SOURCE;
return 0; }
6005 #ifdef IP_PKTOPTIONS
6006 if (
memcmp(
str,
"IP_PKTOPTIONS", 13) == 0) { *valp = IP_PKTOPTIONS;
return 0; }
6008 #ifdef IP_MULTICAST_TTL
6009 if (
memcmp(
str,
"MULTICAST_TTL", 13) == 0) { *valp = IP_MULTICAST_TTL;
return 0; }
6011 #ifdef IP_PMTUDISC_DONT
6012 if (
memcmp(
str,
"PMTUDISC_DONT", 13) == 0) { *valp = IP_PMTUDISC_DONT;
return 0; }
6014 #ifdef IP_PMTUDISC_WANT
6015 if (
memcmp(
str,
"PMTUDISC_WANT", 13) == 0) { *valp = IP_PMTUDISC_WANT;
return 0; }
6020 #ifdef IP_RECVRETOPTS
6021 if (
memcmp(
str,
"IP_RECVRETOPTS", 14) == 0) { *valp = IP_RECVRETOPTS;
return 0; }
6023 #ifdef IP_RECVDSTADDR
6024 if (
memcmp(
str,
"IP_RECVDSTADDR", 14) == 0) { *valp = IP_RECVDSTADDR;
return 0; }
6026 #ifdef IP_SENDSRCADDR
6027 if (
memcmp(
str,
"IP_SENDSRCADDR", 14) == 0) { *valp = IP_SENDSRCADDR;
return 0; }
6029 #ifdef IP_XFRM_POLICY
6030 if (
memcmp(
str,
"IP_XFRM_POLICY", 14) == 0) { *valp = IP_XFRM_POLICY;
return 0; }
6032 #ifdef IP_TRANSPARENT
6033 if (
memcmp(
str,
"IP_TRANSPARENT", 14) == 0) { *valp = IP_TRANSPARENT;
return 0; }
6035 #ifdef IP_PMTUDISC_DO
6036 if (
memcmp(
str,
"IP_PMTUDISC_DO", 14) == 0) { *valp = IP_PMTUDISC_DO;
return 0; }
6038 #ifdef IP_MULTICAST_LOOP
6039 if (
memcmp(
str,
"MULTICAST_LOOP", 14) == 0) { *valp = IP_MULTICAST_LOOP;
return 0; }
6041 #ifdef IP_ADD_MEMBERSHIP
6042 if (
memcmp(
str,
"ADD_MEMBERSHIP", 14) == 0) { *valp = IP_ADD_MEMBERSHIP;
return 0; }
6044 #ifdef IP_UNBLOCK_SOURCE
6045 if (
memcmp(
str,
"UNBLOCK_SOURCE", 14) == 0) { *valp = IP_UNBLOCK_SOURCE;
return 0; }
6050 #ifdef IP_MULTICAST_IF
6051 if (
memcmp(
str,
"IP_MULTICAST_IF", 15) == 0) { *valp = IP_MULTICAST_IF;
return 0; }
6053 #ifdef IP_ROUTER_ALERT
6054 if (
memcmp(
str,
"IP_ROUTER_ALERT", 15) == 0) { *valp = IP_ROUTER_ALERT;
return 0; }
6056 #ifdef IP_MTU_DISCOVER
6057 if (
memcmp(
str,
"IP_MTU_DISCOVER", 15) == 0) { *valp = IP_MTU_DISCOVER;
return 0; }
6059 #ifdef IP_IPSEC_POLICY
6060 if (
memcmp(
str,
"IP_IPSEC_POLICY", 15) == 0) { *valp = IP_IPSEC_POLICY;
return 0; }
6062 #ifdef IP_BLOCK_SOURCE
6063 if (
memcmp(
str,
"IP_BLOCK_SOURCE", 15) == 0) { *valp = IP_BLOCK_SOURCE;
return 0; }
6065 #ifdef IP_DROP_MEMBERSHIP
6066 if (
memcmp(
str,
"DROP_MEMBERSHIP", 15) == 0) { *valp = IP_DROP_MEMBERSHIP;
return 0; }
6068 #ifdef IP_MAX_MEMBERSHIPS
6069 if (
memcmp(
str,
"MAX_MEMBERSHIPS", 15) == 0) { *valp = IP_MAX_MEMBERSHIPS;
return 0; }
6074 #ifdef IP_MULTICAST_TTL
6075 if (
memcmp(
str,
"IP_MULTICAST_TTL", 16) == 0) { *valp = IP_MULTICAST_TTL;
return 0; }
6077 #ifdef IP_PMTUDISC_DONT
6078 if (
memcmp(
str,
"IP_PMTUDISC_DONT", 16) == 0) { *valp = IP_PMTUDISC_DONT;
return 0; }
6080 #ifdef IP_PMTUDISC_WANT
6081 if (
memcmp(
str,
"IP_PMTUDISC_WANT", 16) == 0) { *valp = IP_PMTUDISC_WANT;
return 0; }
6086 #ifdef IP_MULTICAST_LOOP
6087 if (
memcmp(
str,
"IP_MULTICAST_LOOP", 17) == 0) { *valp = IP_MULTICAST_LOOP;
return 0; }
6089 #ifdef IP_ADD_MEMBERSHIP
6090 if (
memcmp(
str,
"IP_ADD_MEMBERSHIP", 17) == 0) { *valp = IP_ADD_MEMBERSHIP;
return 0; }
6092 #ifdef IP_UNBLOCK_SOURCE
6093 if (
memcmp(
str,
"IP_UNBLOCK_SOURCE", 17) == 0) { *valp = IP_UNBLOCK_SOURCE;
return 0; }
6098 #ifdef IP_DROP_MEMBERSHIP
6099 if (
memcmp(
str,
"IP_DROP_MEMBERSHIP", 18) == 0) { *valp = IP_DROP_MEMBERSHIP;
return 0; }
6101 #ifdef IP_MAX_MEMBERSHIPS
6102 if (
memcmp(
str,
"IP_MAX_MEMBERSHIPS", 18) == 0) { *valp = IP_MAX_MEMBERSHIPS;
return 0; }
6107 #ifdef IP_DEFAULT_MULTICAST_TTL
6108 if (
memcmp(
str,
"DEFAULT_MULTICAST_TTL", 21) == 0) { *valp = IP_DEFAULT_MULTICAST_TTL;
return 0; }
6110 #ifdef IP_ADD_SOURCE_MEMBERSHIP
6111 if (
memcmp(
str,
"ADD_SOURCE_MEMBERSHIP", 21) == 0) { *valp = IP_ADD_SOURCE_MEMBERSHIP;
return 0; }
6116 #ifdef IP_DEFAULT_MULTICAST_LOOP
6117 if (
memcmp(
str,
"DEFAULT_MULTICAST_LOOP", 22) == 0) { *valp = IP_DEFAULT_MULTICAST_LOOP;
return 0; }
6119 #ifdef IP_DROP_SOURCE_MEMBERSHIP
6120 if (
memcmp(
str,
"DROP_SOURCE_MEMBERSHIP", 22) == 0) { *valp = IP_DROP_SOURCE_MEMBERSHIP;
return 0; }
6125 #ifdef IP_DEFAULT_MULTICAST_TTL
6126 if (
memcmp(
str,
"IP_DEFAULT_MULTICAST_TTL", 24) == 0) { *valp = IP_DEFAULT_MULTICAST_TTL;
return 0; }
6128 #ifdef IP_ADD_SOURCE_MEMBERSHIP
6129 if (
memcmp(
str,
"IP_ADD_SOURCE_MEMBERSHIP", 24) == 0) { *valp = IP_ADD_SOURCE_MEMBERSHIP;
return 0; }
6134 #ifdef IP_DEFAULT_MULTICAST_LOOP
6135 if (
memcmp(
str,
"IP_DEFAULT_MULTICAST_LOOP", 25) == 0) { *valp = IP_DEFAULT_MULTICAST_LOOP;
return 0; }
6137 #ifdef IP_DROP_SOURCE_MEMBERSHIP
6138 if (
memcmp(
str,
"IP_DROP_SOURCE_MEMBERSHIP", 25) == 0) { *valp = IP_DROP_SOURCE_MEMBERSHIP;
return 0; }
6143 if (!
str || !valp) {}
6151 rsock_ipv6_optname_to_int(
const char *
str,
long len,
int *valp)
6156 if (
memcmp(
str,
"RTHDR", 5) == 0) { *valp = IPV6_RTHDR;
return 0; }
6162 if (
memcmp(
str,
"V6ONLY", 6) == 0) { *valp = IPV6_V6ONLY;
return 0; }
6165 if (
memcmp(
str,
"TCLASS", 6) == 0) { *valp = IPV6_TCLASS;
return 0; }
6171 if (
memcmp(
str,
"DSTOPTS", 7) == 0) { *valp = IPV6_DSTOPTS;
return 0; }
6174 if (
memcmp(
str,
"HOPOPTS", 7) == 0) { *valp = IPV6_HOPOPTS;
return 0; }
6177 if (
memcmp(
str,
"NEXTHOP", 7) == 0) { *valp = IPV6_NEXTHOP;
return 0; }
6180 if (
memcmp(
str,
"PATHMTU", 7) == 0) { *valp = IPV6_PATHMTU;
return 0; }
6183 if (
memcmp(
str,
"PKTINFO", 7) == 0) { *valp = IPV6_PKTINFO;
return 0; }
6188 #ifdef IPV6_CHECKSUM
6189 if (
memcmp(
str,
"CHECKSUM", 8) == 0) { *valp = IPV6_CHECKSUM;
return 0; }
6191 #ifdef IPV6_DONTFRAG
6192 if (
memcmp(
str,
"DONTFRAG", 8) == 0) { *valp = IPV6_DONTFRAG;
return 0; }
6194 #ifdef IPV6_HOPLIMIT
6195 if (
memcmp(
str,
"HOPLIMIT", 8) == 0) { *valp = IPV6_HOPLIMIT;
return 0; }
6200 #ifdef IPV6_RECVRTHDR
6201 if (
memcmp(
str,
"RECVRTHDR", 9) == 0) { *valp = IPV6_RECVRTHDR;
return 0; }
6207 if (
memcmp(
str,
"IPV6_RTHDR", 10) == 0) { *valp = IPV6_RTHDR;
return 0; }
6209 #ifdef IPV6_JOIN_GROUP
6210 if (
memcmp(
str,
"JOIN_GROUP", 10) == 0) { *valp = IPV6_JOIN_GROUP;
return 0; }
6212 #ifdef IPV6_RECVTCLASS
6213 if (
memcmp(
str,
"RECVTCLASS", 10) == 0) { *valp = IPV6_RECVTCLASS;
return 0; }
6219 if (
memcmp(
str,
"IPV6_V6ONLY", 11) == 0) { *valp = IPV6_V6ONLY;
return 0; }
6222 if (
memcmp(
str,
"IPV6_TCLASS", 11) == 0) { *valp = IPV6_TCLASS;
return 0; }
6224 #ifdef IPV6_LEAVE_GROUP
6225 if (
memcmp(
str,
"LEAVE_GROUP", 11) == 0) { *valp = IPV6_LEAVE_GROUP;
return 0; }
6227 #ifdef IPV6_RECVDSTOPTS
6228 if (
memcmp(
str,
"RECVDSTOPTS", 11) == 0) { *valp = IPV6_RECVDSTOPTS;
return 0; }
6230 #ifdef IPV6_RECVHOPOPTS
6231 if (
memcmp(
str,
"RECVHOPOPTS", 11) == 0) { *valp = IPV6_RECVHOPOPTS;
return 0; }
6233 #ifdef IPV6_RECVPKTINFO
6234 if (
memcmp(
str,
"RECVPKTINFO", 11) == 0) { *valp = IPV6_RECVPKTINFO;
return 0; }
6236 #ifdef IPV6_RECVPATHMTU
6237 if (
memcmp(
str,
"RECVPATHMTU", 11) == 0) { *valp = IPV6_RECVPATHMTU;
return 0; }
6239 #ifdef IPV6_USE_MIN_MTU
6240 if (
memcmp(
str,
"USE_MIN_MTU", 11) == 0) { *valp = IPV6_USE_MIN_MTU;
return 0; }
6246 if (
memcmp(
str,
"IPV6_DSTOPTS", 12) == 0) { *valp = IPV6_DSTOPTS;
return 0; }
6249 if (
memcmp(
str,
"IPV6_HOPOPTS", 12) == 0) { *valp = IPV6_HOPOPTS;
return 0; }
6252 if (
memcmp(
str,
"IPV6_NEXTHOP", 12) == 0) { *valp = IPV6_NEXTHOP;
return 0; }
6255 if (
memcmp(
str,
"IPV6_PATHMTU", 12) == 0) { *valp = IPV6_PATHMTU;
return 0; }
6258 if (
memcmp(
str,
"IPV6_PKTINFO", 12) == 0) { *valp = IPV6_PKTINFO;
return 0; }
6260 #ifdef IPV6_MULTICAST_IF
6261 if (
memcmp(
str,
"MULTICAST_IF", 12) == 0) { *valp = IPV6_MULTICAST_IF;
return 0; }
6263 #ifdef IPV6_UNICAST_HOPS
6264 if (
memcmp(
str,
"UNICAST_HOPS", 12) == 0) { *valp = IPV6_UNICAST_HOPS;
return 0; }
6266 #ifdef IPV6_RECVHOPLIMIT
6267 if (
memcmp(
str,
"RECVHOPLIMIT", 12) == 0) { *valp = IPV6_RECVHOPLIMIT;
return 0; }
6269 #ifdef IPV6_RTHDRDSTOPTS
6270 if (
memcmp(
str,
"RTHDRDSTOPTS", 12) == 0) { *valp = IPV6_RTHDRDSTOPTS;
return 0; }
6272 #ifdef IPV6_RTHDR_TYPE_0
6273 if (
memcmp(
str,
"RTHDR_TYPE_0", 12) == 0) { *valp = IPV6_RTHDR_TYPE_0;
return 0; }
6278 #ifdef IPV6_CHECKSUM
6279 if (
memcmp(
str,
"IPV6_CHECKSUM", 13) == 0) { *valp = IPV6_CHECKSUM;
return 0; }
6281 #ifdef IPV6_DONTFRAG
6282 if (
memcmp(
str,
"IPV6_DONTFRAG", 13) == 0) { *valp = IPV6_DONTFRAG;
return 0; }
6284 #ifdef IPV6_HOPLIMIT
6285 if (
memcmp(
str,
"IPV6_HOPLIMIT", 13) == 0) { *valp = IPV6_HOPLIMIT;
return 0; }
6290 #ifdef IPV6_RECVRTHDR
6291 if (
memcmp(
str,
"IPV6_RECVRTHDR", 14) == 0) { *valp = IPV6_RECVRTHDR;
return 0; }
6293 #ifdef IPV6_MULTICAST_HOPS
6294 if (
memcmp(
str,
"MULTICAST_HOPS", 14) == 0) { *valp = IPV6_MULTICAST_HOPS;
return 0; }
6296 #ifdef IPV6_MULTICAST_LOOP
6297 if (
memcmp(
str,
"MULTICAST_LOOP", 14) == 0) { *valp = IPV6_MULTICAST_LOOP;
return 0; }
6302 #ifdef IPV6_JOIN_GROUP
6303 if (
memcmp(
str,
"IPV6_JOIN_GROUP", 15) == 0) { *valp = IPV6_JOIN_GROUP;
return 0; }
6305 #ifdef IPV6_RECVTCLASS
6306 if (
memcmp(
str,
"IPV6_RECVTCLASS", 15) == 0) { *valp = IPV6_RECVTCLASS;
return 0; }
6311 #ifdef IPV6_LEAVE_GROUP
6312 if (
memcmp(
str,
"IPV6_LEAVE_GROUP", 16) == 0) { *valp = IPV6_LEAVE_GROUP;
return 0; }
6314 #ifdef IPV6_RECVDSTOPTS
6315 if (
memcmp(
str,
"IPV6_RECVDSTOPTS", 16) == 0) { *valp = IPV6_RECVDSTOPTS;
return 0; }
6317 #ifdef IPV6_RECVHOPOPTS
6318 if (
memcmp(
str,
"IPV6_RECVHOPOPTS", 16) == 0) { *valp = IPV6_RECVHOPOPTS;
return 0; }
6320 #ifdef IPV6_RECVPKTINFO
6321 if (
memcmp(
str,
"IPV6_RECVPKTINFO", 16) == 0) { *valp = IPV6_RECVPKTINFO;
return 0; }
6323 #ifdef IPV6_RECVPATHMTU
6324 if (
memcmp(
str,
"IPV6_RECVPATHMTU", 16) == 0) { *valp = IPV6_RECVPATHMTU;
return 0; }
6326 #ifdef IPV6_USE_MIN_MTU
6327 if (
memcmp(
str,
"IPV6_USE_MIN_MTU", 16) == 0) { *valp = IPV6_USE_MIN_MTU;
return 0; }
6332 #ifdef IPV6_MULTICAST_IF
6333 if (
memcmp(
str,
"IPV6_MULTICAST_IF", 17) == 0) { *valp = IPV6_MULTICAST_IF;
return 0; }
6335 #ifdef IPV6_UNICAST_HOPS
6336 if (
memcmp(
str,
"IPV6_UNICAST_HOPS", 17) == 0) { *valp = IPV6_UNICAST_HOPS;
return 0; }
6338 #ifdef IPV6_RECVHOPLIMIT
6339 if (
memcmp(
str,
"IPV6_RECVHOPLIMIT", 17) == 0) { *valp = IPV6_RECVHOPLIMIT;
return 0; }
6341 #ifdef IPV6_RTHDRDSTOPTS
6342 if (
memcmp(
str,
"IPV6_RTHDRDSTOPTS", 17) == 0) { *valp = IPV6_RTHDRDSTOPTS;
return 0; }
6344 #ifdef IPV6_RTHDR_TYPE_0
6345 if (
memcmp(
str,
"IPV6_RTHDR_TYPE_0", 17) == 0) { *valp = IPV6_RTHDR_TYPE_0;
return 0; }
6350 #ifdef IPV6_MULTICAST_HOPS
6351 if (
memcmp(
str,
"IPV6_MULTICAST_HOPS", 19) == 0) { *valp = IPV6_MULTICAST_HOPS;
return 0; }
6353 #ifdef IPV6_MULTICAST_LOOP
6354 if (
memcmp(
str,
"IPV6_MULTICAST_LOOP", 19) == 0) { *valp = IPV6_MULTICAST_LOOP;
return 0; }
6359 if (!
str || !valp) {}
6372 if (
memcmp(
str,
"CORK", 4) == 0) { *valp = TCP_CORK;
return 0; }
6375 if (
memcmp(
str,
"INFO", 4) == 0) { *valp = TCP_INFO;
return 0; }
6381 if (
memcmp(
str,
"NOOPT", 5) == 0) { *valp = TCP_NOOPT;
return 0; }
6387 if (
memcmp(
str,
"MAXSEG", 6) == 0) { *valp = TCP_MAXSEG;
return 0; }
6390 if (
memcmp(
str,
"MD5SIG", 6) == 0) { *valp = TCP_MD5SIG;
return 0; }
6393 if (
memcmp(
str,
"NOPUSH", 6) == 0) { *valp = TCP_NOPUSH;
return 0; }
6396 if (
memcmp(
str,
"SYNCNT", 6) == 0) { *valp = TCP_SYNCNT;
return 0; }
6399 if (
memcmp(
str,
"REPAIR", 6) == 0) { *valp = TCP_REPAIR;
return 0; }
6405 if (
memcmp(
str,
"NODELAY", 7) == 0) { *valp = TCP_NODELAY;
return 0; }
6408 if (
memcmp(
str,
"KEEPCNT", 7) == 0) { *valp = TCP_KEEPCNT;
return 0; }
6411 if (
memcmp(
str,
"LINGER2", 7) == 0) { *valp = TCP_LINGER2;
return 0; }
6417 if (
memcmp(
str,
"TCP_CORK", 8) == 0) { *valp = TCP_CORK;
return 0; }
6420 if (
memcmp(
str,
"TCP_INFO", 8) == 0) { *valp = TCP_INFO;
return 0; }
6423 if (
memcmp(
str,
"KEEPIDLE", 8) == 0) { *valp = TCP_KEEPIDLE;
return 0; }
6426 if (
memcmp(
str,
"QUICKACK", 8) == 0) { *valp = TCP_QUICKACK;
return 0; }
6429 if (
memcmp(
str,
"FASTOPEN", 8) == 0) { *valp = TCP_FASTOPEN;
return 0; }
6435 if (
memcmp(
str,
"TCP_NOOPT", 9) == 0) { *valp = TCP_NOOPT;
return 0; }
6437 #ifdef TCP_KEEPINTVL
6438 if (
memcmp(
str,
"KEEPINTVL", 9) == 0) { *valp = TCP_KEEPINTVL;
return 0; }
6440 #ifdef TCP_QUEUE_SEQ
6441 if (
memcmp(
str,
"QUEUE_SEQ", 9) == 0) { *valp = TCP_QUEUE_SEQ;
return 0; }
6443 #ifdef TCP_TIMESTAMP
6444 if (
memcmp(
str,
"TIMESTAMP", 9) == 0) { *valp = TCP_TIMESTAMP;
return 0; }
6450 if (
memcmp(
str,
"TCP_MAXSEG", 10) == 0) { *valp = TCP_MAXSEG;
return 0; }
6453 if (
memcmp(
str,
"TCP_MD5SIG", 10) == 0) { *valp = TCP_MD5SIG;
return 0; }
6456 if (
memcmp(
str,
"TCP_NOPUSH", 10) == 0) { *valp = TCP_NOPUSH;
return 0; }
6459 if (
memcmp(
str,
"TCP_SYNCNT", 10) == 0) { *valp = TCP_SYNCNT;
return 0; }
6462 if (
memcmp(
str,
"TCP_REPAIR", 10) == 0) { *valp = TCP_REPAIR;
return 0; }
6464 #ifdef TCP_CONGESTION
6465 if (
memcmp(
str,
"CONGESTION", 10) == 0) { *valp = TCP_CONGESTION;
return 0; }
6471 if (
memcmp(
str,
"TCP_NODELAY", 11) == 0) { *valp = TCP_NODELAY;
return 0; }
6474 if (
memcmp(
str,
"TCP_KEEPCNT", 11) == 0) { *valp = TCP_KEEPCNT;
return 0; }
6477 if (
memcmp(
str,
"TCP_LINGER2", 11) == 0) { *valp = TCP_LINGER2;
return 0; }
6479 #ifdef TCP_THIN_DUPACK
6480 if (
memcmp(
str,
"THIN_DUPACK", 11) == 0) { *valp = TCP_THIN_DUPACK;
return 0; }
6486 if (
memcmp(
str,
"TCP_KEEPIDLE", 12) == 0) { *valp = TCP_KEEPIDLE;
return 0; }
6489 if (
memcmp(
str,
"TCP_QUICKACK", 12) == 0) { *valp = TCP_QUICKACK;
return 0; }
6492 if (
memcmp(
str,
"TCP_FASTOPEN", 12) == 0) { *valp = TCP_FASTOPEN;
return 0; }
6494 #ifdef TCP_DEFER_ACCEPT
6495 if (
memcmp(
str,
"DEFER_ACCEPT", 12) == 0) { *valp = TCP_DEFER_ACCEPT;
return 0; }
6497 #ifdef TCP_WINDOW_CLAMP
6498 if (
memcmp(
str,
"WINDOW_CLAMP", 12) == 0) { *valp = TCP_WINDOW_CLAMP;
return 0; }
6500 #ifdef TCP_REPAIR_QUEUE
6501 if (
memcmp(
str,
"REPAIR_QUEUE", 12) == 0) { *valp = TCP_REPAIR_QUEUE;
return 0; }
6503 #ifdef TCP_USER_TIMEOUT
6504 if (
memcmp(
str,
"USER_TIMEOUT", 12) == 0) { *valp = TCP_USER_TIMEOUT;
return 0; }
6509 #ifdef TCP_KEEPINTVL
6510 if (
memcmp(
str,
"TCP_KEEPINTVL", 13) == 0) { *valp = TCP_KEEPINTVL;
return 0; }
6512 #ifdef TCP_QUEUE_SEQ
6513 if (
memcmp(
str,
"TCP_QUEUE_SEQ", 13) == 0) { *valp = TCP_QUEUE_SEQ;
return 0; }
6515 #ifdef TCP_TIMESTAMP
6516 if (
memcmp(
str,
"TCP_TIMESTAMP", 13) == 0) { *valp = TCP_TIMESTAMP;
return 0; }
6521 #ifdef TCP_CONGESTION
6522 if (
memcmp(
str,
"TCP_CONGESTION", 14) == 0) { *valp = TCP_CONGESTION;
return 0; }
6524 #ifdef TCP_REPAIR_OPTIONS
6525 if (
memcmp(
str,
"REPAIR_OPTIONS", 14) == 0) { *valp = TCP_REPAIR_OPTIONS;
return 0; }
6530 #ifdef TCP_THIN_DUPACK
6531 if (
memcmp(
str,
"TCP_THIN_DUPACK", 15) == 0) { *valp = TCP_THIN_DUPACK;
return 0; }
6536 #ifdef TCP_DEFER_ACCEPT
6537 if (
memcmp(
str,
"TCP_DEFER_ACCEPT", 16) == 0) { *valp = TCP_DEFER_ACCEPT;
return 0; }
6539 #ifdef TCP_WINDOW_CLAMP
6540 if (
memcmp(
str,
"TCP_WINDOW_CLAMP", 16) == 0) { *valp = TCP_WINDOW_CLAMP;
return 0; }
6542 #ifdef TCP_REPAIR_QUEUE
6543 if (
memcmp(
str,
"TCP_REPAIR_QUEUE", 16) == 0) { *valp = TCP_REPAIR_QUEUE;
return 0; }
6545 #ifdef TCP_USER_TIMEOUT
6546 if (
memcmp(
str,
"TCP_USER_TIMEOUT", 16) == 0) { *valp = TCP_USER_TIMEOUT;
return 0; }
6551 #ifdef TCP_REPAIR_OPTIONS
6552 if (
memcmp(
str,
"TCP_REPAIR_OPTIONS", 18) == 0) { *valp = TCP_REPAIR_OPTIONS;
return 0; }
6557 #ifdef TCP_COOKIE_TRANSACTIONS
6558 if (
memcmp(
str,
"COOKIE_TRANSACTIONS", 19) == 0) { *valp = TCP_COOKIE_TRANSACTIONS;
return 0; }
6563 #ifdef TCP_THIN_LINEAR_TIMEOUTS
6564 if (
memcmp(
str,
"THIN_LINEAR_TIMEOUTS", 20) == 0) { *valp = TCP_THIN_LINEAR_TIMEOUTS;
return 0; }
6569 #ifdef TCP_COOKIE_TRANSACTIONS
6570 if (
memcmp(
str,
"TCP_COOKIE_TRANSACTIONS", 23) == 0) { *valp = TCP_COOKIE_TRANSACTIONS;
return 0; }
6575 #ifdef TCP_THIN_LINEAR_TIMEOUTS
6576 if (
memcmp(
str,
"TCP_THIN_LINEAR_TIMEOUTS", 24) == 0) { *valp = TCP_THIN_LINEAR_TIMEOUTS;
return 0; }
6581 if (!
str || !valp) {}
6593 if (
memcmp(
str,
"CORK", 4) == 0) { *valp = UDP_CORK;
return 0; }
6599 if (
memcmp(
str,
"UDP_CORK", 8) == 0) { *valp = UDP_CORK;
return 0; }
6604 if (!
str || !valp) {}
6645 if (!
str || !valp) {}
6657 if (
memcmp(
str,
"CREDS", 5) == 0) { *valp = SCM_CREDS;
return 0; }
6660 if (
memcmp(
str,
"UCRED", 5) == 0) { *valp = SCM_UCRED;
return 0; }
6666 if (
memcmp(
str,
"RIGHTS", 6) == 0) { *valp = SCM_RIGHTS;
return 0; }
6672 if (
memcmp(
str,
"BINTIME", 7) == 0) { *valp = SCM_BINTIME;
return 0; }
6678 if (
memcmp(
str,
"SCM_CREDS", 9) == 0) { *valp = SCM_CREDS;
return 0; }
6681 if (
memcmp(
str,
"SCM_UCRED", 9) == 0) { *valp = SCM_UCRED;
return 0; }
6683 #ifdef SCM_TIMESTAMP
6684 if (
memcmp(
str,
"TIMESTAMP", 9) == 0) { *valp = SCM_TIMESTAMP;
return 0; }
6690 if (
memcmp(
str,
"SCM_RIGHTS", 10) == 0) { *valp = SCM_RIGHTS;
return 0; }
6696 if (
memcmp(
str,
"SCM_BINTIME", 11) == 0) { *valp = SCM_BINTIME;
return 0; }
6698 #ifdef SCM_TIMESTAMPNS
6699 if (
memcmp(
str,
"TIMESTAMPNS", 11) == 0) { *valp = SCM_TIMESTAMPNS;
return 0; }
6701 #ifdef SCM_CREDENTIALS
6702 if (
memcmp(
str,
"CREDENTIALS", 11) == 0) { *valp = SCM_CREDENTIALS;
return 0; }
6704 #ifdef SCM_WIFI_STATUS
6705 if (
memcmp(
str,
"WIFI_STATUS", 11) == 0) { *valp = SCM_WIFI_STATUS;
return 0; }
6710 #ifdef SCM_TIMESTAMPING
6711 if (
memcmp(
str,
"TIMESTAMPING", 12) == 0) { *valp = SCM_TIMESTAMPING;
return 0; }
6716 #ifdef SCM_TIMESTAMP
6717 if (
memcmp(
str,
"SCM_TIMESTAMP", 13) == 0) { *valp = SCM_TIMESTAMP;
return 0; }
6722 #ifdef SCM_TIMESTAMPNS
6723 if (
memcmp(
str,
"SCM_TIMESTAMPNS", 15) == 0) { *valp = SCM_TIMESTAMPNS;
return 0; }
6725 #ifdef SCM_CREDENTIALS
6726 if (
memcmp(
str,
"SCM_CREDENTIALS", 15) == 0) { *valp = SCM_CREDENTIALS;
return 0; }
6728 #ifdef SCM_WIFI_STATUS
6729 if (
memcmp(
str,
"SCM_WIFI_STATUS", 15) == 0) { *valp = SCM_WIFI_STATUS;
return 0; }
6734 #ifdef SCM_TIMESTAMPING
6735 if (
memcmp(
str,
"SCM_TIMESTAMPING", 16) == 0) { *valp = SCM_TIMESTAMPING;
return 0; }
6740 if (!
str || !valp) {}