diff options
| author | Andrey Konovalov <andreyknvl@google.com> | 2017-02-09 14:28:02 +0100 |
|---|---|---|
| committer | Andrey Konovalov <andreyknvl@google.com> | 2017-02-09 14:28:10 +0100 |
| commit | 0ec1144963cffce720dc873b6311730267969fd7 (patch) | |
| tree | fcccf3d9682a25c0debb5303f31f3aeb96fab94c /sys | |
| parent | 8722e7a33ec75c19437127a5926b82cc48ff9ec3 (diff) | |
sys: split socket.txt into multiple files based on socket type
This just moves syscall descriptions and fixes up includes
without any semantic changes.
Diffstat (limited to 'sys')
63 files changed, 2462 insertions, 1577 deletions
diff --git a/sys/socket.txt b/sys/socket.txt index daada3bfd..eb4d6c956 100644 --- a/sys/socket.txt +++ b/sys/socket.txt @@ -1,22 +1,10 @@ -# Copyright 2015 syzkaller project authors. All rights reserved. +# Copyright 2017 syzkaller project authors. All rights reserved. # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. +include <linux/socket.h> +include <linux/net.h> include <linux/net_tstamp.h> -include <linux/isdn/capilli.h> -include <linux/crypto.h> -include <net/bluetooth/bluetooth.h> -include <net/bluetooth/hci_sock.h> -include <net/bluetooth/l2cap.h> -include <net/bluetooth/cmtp/cmtp.h> -include <net/bluetooth/bnep/bnep.h> -include <net/bluetooth/hidp/hidp.h> -include <net/bluetooth/sco.h> -include <net/bluetooth/rfcomm.h> include <asm/ioctls.h> -include <uapi/linux/tcp.h> -include <uapi/linux/nfc.h> -include <uapi/linux/udp.h> -include <uapi/linux/if_alg.h> resource sock[fd] @@ -59,42 +47,6 @@ getsockopt$SO_TIMESTAMPING(fd sock, level const[SOL_SOCKET], optname const[SO_TI setsockopt$SO_ATTACH_FILTER(fd sock, level const[SOL_SOCKET], optname const[SO_ATTACH_FILTER], optval ptr[in, sock_fprog], optlen len[optval]) getsockopt$sock_buf(fd sock, level const[SOL_SOCKET], optname flags[sockopt_opt_sock_buf], optval buffer[out], optlen ptr[inout, len[optval, int32]]) -# IPPROTO_TCP -getsockopt$tcp_int(fd sock, level const[IPPROTO_TCP], optname flags[sockopt_opt_tcp_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) -setsockopt$tcp_int(fd sock, level const[IPPROTO_TCP], optname flags[sockopt_opt_tcp_int], optval ptr[in, int32], optlen len[optval]) -getsockopt$tcp_buf(fd sock, level const[IPPROTO_TCP], optname const[TCP_INFO], optval buffer[out], optlen ptr[inout, len[optval, int32]]) -setsockopt$tcp_buf(fd sock, level const[IPPROTO_TCP], optname const[TCP_INFO], optval buffer[in], optlen len[optval]) -getsockopt$udp_int(fd sock, level const[IPPROTO_UDP], optname const[UDP_CORK], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) -setsockopt$udp_int(fd sock, level const[IPPROTO_UDP], optname const[UDP_CORK], optval ptr[in, int32], optlen len[optval]) -getsockopt$ip_int(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_int(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_int], optval ptr[in, int32], optlen len[optval]) -getsockopt$ip_buf(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_buf], optval buffer[out], optlen ptr[inout, len[optval, int32]]) -getsockopt$ip_mreq(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[out, ip_mreq], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_mreq(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[in, ip_mreq], optlen len[optval]) -getsockopt$ip_mreqn(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[out, ip_mreqn], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_mreqn(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[in, ip_mreqn], optlen len[optval]) -getsockopt$ip_mreqsrc(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreqsrc], optval ptr[out, ip_mreq_source], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_mreqsrc(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreqsrc], optval ptr[in, ip_mreq_source], optlen len[optval]) -setsockopt$ip_msfilter(fd sock, level const[IPPROTO_IP], optname const[IP_MSFILTER], optval ptr[in, ip_msfilter], optlen len[optval]) -getsockopt$ip_mtu(fd sock, level const[IPPROTO_IP], optname const[IP_MTU_DISCOVER], optval ptr[out, flags[ip_mtu_discover, int32]], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_mtu(fd sock, level const[IPPROTO_IP], optname const[IP_MTU_DISCOVER], optval ptr[in, flags[ip_mtu_discover, int32]], optlen len[optval]) -getsockopt$ip_opts(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_opts], optval buffer[out], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_opts(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_opts], optval buffer[in], optlen len[optval]) -getsockopt$ip_pktinfo(fd sock, level const[IPPROTO_IP], optname const[IP_PKTINFO], optval ptr[out, in_pktinfo], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_pktinfo(fd sock, level const[IPPROTO_IP], optname const[IP_PKTINFO], optval ptr[in, in_pktinfo], optlen len[optval]) -getsockopt$ip_ipsec(fd sock, level const[IPPROTO_IP], optname const[IP_IPSEC_POLICY], optval ptr[out, xfrm_filer], optlen ptr[inout, len[optval, int32]]) -setsockopt$ip_ipsec(fd sock, level const[IPPROTO_IP], optname const[IP_IPSEC_POLICY], optval ptr[in, xfrm_filer], optlen len[optval]) - -# IPPROTO_IPV6 -getsockopt$ipv6_int(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) -setsockopt$ipv6_int(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_int], optval ptr[in, int32], optlen len[optval]) -getsockopt$ipv6_mreq(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_mreq], optval ptr[out, ipv6_mreq], optlen ptr[inout, len[optval, int32]]) -setsockopt$ipv6_mreq(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_mreq], optval ptr[in, ipv6_mreq], optlen len[optval]) -getsockopt$ipv6_mtu(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_MTU_DISCOVER], optval ptr[out, flags[ip_mtu_discover, int32]], optlen ptr[inout, len[optval, int32]]) -setsockopt$ipv6_mtu(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_MTU_DISCOVER], optval ptr[in, flags[ip_mtu_discover, int32]], optlen len[optval]) -getsockopt$ipv6_opts(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_2292PKTOPTIONS], optval buffer[out], optlen ptr[inout, len[optval, int32]]) -setsockopt$ipv6_opts(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_2292PKTOPTIONS], optval buffer[in], optlen len[optval]) - socket_domain = AF_UNIX, AF_INET, AF_INET6, AF_IPX, AF_NETLINK, AF_X25, AF_AX25, AF_ATMPVC, AF_APPLETALK, AF_PACKET socket_type = SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET, SOCK_RAW, SOCK_RDM, SOCK_PACKET, SOCK_NONBLOCK, SOCK_CLOEXEC accept_flags = SOCK_NONBLOCK, SOCK_CLOEXEC @@ -106,17 +58,6 @@ sockopt_opt_sock_int = SO_ACCEPTCONN, SO_BROADCAST, SO_DEBUG, SO_DOMAIN, SO_ERRO sockopt_opt_sock_timeval = SO_RCVTIMEO, SO_SNDTIMEO sockopt_opt_sock_buf = SO_BINDTODEVICE, SO_PEERCRED, SO_PEERNAME, SO_PEERSEC, SO_GET_FILTER sockopt_so_timestamping = SOF_TIMESTAMPING_TX_HARDWARE, SOF_TIMESTAMPING_TX_SOFTWARE, SOF_TIMESTAMPING_RX_HARDWARE, SOF_TIMESTAMPING_RX_SOFTWARE, SOF_TIMESTAMPING_SOFTWARE, SOF_TIMESTAMPING_SYS_HARDWARE, SOF_TIMESTAMPING_RAW_HARDWARE, SOF_TIMESTAMPING_OPT_ID, SOF_TIMESTAMPING_TX_SCHED, SOF_TIMESTAMPING_TX_ACK, SOF_TIMESTAMPING_OPT_CMSG, SOF_TIMESTAMPING_OPT_TSONLY -sockopt_opt_tcp_int = TCP_CORK, TCP_DEFER_ACCEPT, TCP_KEEPCNT, TCP_KEEPIDLE, TCP_KEEPINTVL, TCP_LINGER2, TCP_MAXSEG, TCP_NODELAY, TCP_QUICKACK, TCP_SYNCNT, TCP_WINDOW_CLAMP -sockopt_opt_ip_int = IP_FREEBIND, IP_HDRINCL, IP_MTU, IP_MULTICAST_ALL, IP_MULTICAST_LOOP, IP_MULTICAST_TTL, IP_NODEFRAG, IP_RECVOPTS, IP_RECVORIGDSTADDR, IP_RECVTOS, IP_RECVTTL, IP_RETOPTS, IP_ROUTER_ALERT, IP_TOS, IP_TRANSPARENT, IP_TTL, IP_RECVERR, IP_PASSSEC, IP_MINTTL, IP_CHECKSUM, IP_BIND_ADDRESS_NO_PORT -sockopt_opt_ip_buf = IP_MSFILTER -sockopt_opt_ip_mreq = IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IP_MULTICAST_IF -sockopt_opt_ip_mreqsrc = IP_ADD_SOURCE_MEMBERSHIP, IP_BLOCK_SOURCE, IP_DROP_SOURCE_MEMBERSHIP, IP_UNBLOCK_SOURCE -sockopt_opt_ip_opts = IP_OPTIONS, IP_PKTOPTIONS -ip_msfilter_mode = MCAST_INCLUDE, MCAST_EXCLUDE -ip_mtu_discover = IP_PMTUDISC_DONT, IP_PMTUDISC_WANT, IP_PMTUDISC_DO, IP_PMTUDISC_PROBE, IP_PMTUDISC_INTERFACE, IP_PMTUDISC_OMIT -sockopt_opt_ipv6_int = IPV6_ADDRFORM, IPV6_MTU, IPV6_MULTICAST_HOPS, IPV6_MULTICAST_IF, IPV6_MULTICAST_LOOP, IPV6_RECVPKTINFO, IPV6_RECVERR, IPV6_ROUTER_ALERT, IPV6_UNICAST_HOPS, IPV6_V6ONLY, IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT, IPV6_CHECKSUM, IPV6_2292PKTINFO, IPV6_2292HOPOPTS, IPV6_2292DSTOPTS, IPV6_2292RTHDR, IPV6_2292HOPLIMIT -sockopt_opt_ipv6_mreq = IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST -sock_level = IPPROTO_ICMP, SOL_IP, SOL_TCP, SOL_UDP, SOL_IPV6, SOL_ICMPV6, SOL_SCTP, SOL_UDPLITE, SOL_RAW, SOL_IPX, SOL_AX25, SOL_ATALK, SOL_NETROM, SOL_ROSE, SOL_DECNET, SOL_PACKET, SOL_ATM, SOL_AAL, SOL_IRDA, SOL_NETBEUI, SOL_LLC, SOL_DCCP, SOL_NETLINK, SOL_TIPC, SOL_RXRPC, SOL_PPPOL2TP, SOL_BLUETOOTH, SOL_PNPIPE, SOL_RDS, SOL_IUCV, SOL_CAIF, SOL_ALG, SOL_NFC, SOL_KCM sockaddr [ un sockaddr_un @@ -134,36 +75,6 @@ sockaddr [ # TODO: other kinds of sockaddrs ] [varlen] -sockaddr_in { - family const[AF_INET, int16] - port proc[int16be, 20000, 4] - addr in_addr - pad array[const[0, int8], 8] -} - -sockaddr_storage_in { - addr sockaddr_in - pad array[const[0, int64], 15] -} - -sockaddr_in6 { - family const[AF_INET6, int16] - port proc[int16be, 20000, 4] - flow int32 - addr in6_addr - scope int32 -} - -sockaddr_storage_in6 { - addr sockaddr_in6 - pad array[const[0, int64], 12] -} - -sockaddr_storage [ - in sockaddr_storage_in - in6 sockaddr_storage_in6 -] - send_msghdr { addr ptr[in, sockaddr, opt] addrlen len[addr, int32] @@ -190,596 +101,3 @@ cmsghdr { type int32 data array[int8] } [align_ptr] - - - - -# AF_INET: TCP support - -resource sock_tcp[sock] - -socket$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0]) sock_tcp -socketpair$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0], fds ptr[out, tcp_pair]) -accept$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_tcp -accept4$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_tcp -bind$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr]) -connect$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr]) -sendto$tcp(fd sock_tcp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -recvfrom$tcp(fd sock_tcp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -getsockname$tcp(fd sock_tcp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) -getpeername$tcp(fd sock_tcp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) - -tcp_pair { - f0 sock_tcp - f1 sock_tcp -} - -# AF_INET: UDP support - -resource sock_udp[sock] - -socket$udp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[0]) sock_udp -socketpair$udp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[0], fds ptr[out, udp_pair]) -accept$udp(fd sock_udp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_udp -accept4$udp(fd sock_udp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_udp -bind$udp(fd sock_udp, addr ptr[in, sockaddr_in], addrlen len[addr]) -connect$udp(fd sock_udp, addr ptr[in, sockaddr_in], addrlen len[addr]) -sendto$udp(fd sock_udp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -recvfrom$udp(fd sock_udp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -getsockname$udp(fd sock_udp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) -getpeername$udp(fd sock_udp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) - -udp_pair { - f0 sock_udp - f1 sock_udp -} - -# AF_INET: ICMP support - -resource sock_icmp[sock] - -socket$icmp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[IPPROTO_ICMP]) sock_icmp -socket$icmp_raw(domain const[AF_INET], type const[SOCK_RAW], proto const[IPPROTO_ICMP]) sock_icmp -socketpair$icmp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[IPPROTO_ICMP], fds ptr[out, icmp_pair]) -socketpair$icmp_raw(domain const[AF_INET], type const[SOCK_RAW], proto const[IPPROTO_ICMP], fds ptr[out, icmp_pair]) -accept$icmp(fd sock_icmp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_icmp -accept4$icmp(fd sock_icmp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_icmp -bind$icmp(fd sock_icmp, addr ptr[in, sockaddr_in], addrlen len[addr]) -connect$icmp(fd sock_icmp, addr ptr[in, sockaddr_in], addrlen len[addr]) -sendto$icmp(fd sock_icmp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -recvfrom$icmp(fd sock_icmp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) -getsockname$icmp(fd sock_icmp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) -getpeername$icmp(fd sock_icmp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) - -icmp_pair { - f0 sock_icmp - f1 sock_icmp -} - - - - -# AF_INET6: TCP support - -resource sock_tcp6[sock] - -socket$tcp6(domain const[AF_INET6], type const[SOCK_STREAM], proto const[0]) sock_tcp6 -socketpair$tcp6(domain const[AF_INET6], type const[SOCK_STREAM], proto const[0], fds ptr[out, tcp6_pair]) -accept$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_tcp6 -accept4$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_tcp6 -bind$tcp6(fd sock_tcp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -connect$tcp6(fd sock_tcp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -sendto$tcp6(fd sock_tcp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -recvfrom$tcp6(fd sock_tcp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -getsockname$tcp6(fd sock_tcp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) -getpeername$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) - -tcp6_pair { - f0 sock_tcp6 - f1 sock_tcp6 -} - -# AF_INET6: UDP support - -resource sock_udp6[sock] - -socket$udp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[0]) sock_udp6 -socketpair$udp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[0], fds ptr[out, udp6_pair]) -accept$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_udp6 -accept4$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_udp6 -bind$udp6(fd sock_udp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -connect$udp6(fd sock_udp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -sendto$udp6(fd sock_udp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -recvfrom$udp6(fd sock_udp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -getsockname$udp6(fd sock_udp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) -getpeername$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) - -udp6_pair { - f0 sock_udp6 - f1 sock_udp6 -} - -# AF_INET6: ICMP support - -resource sock_icmp6[sock] - -socket$icmp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[IPPROTO_ICMPV6]) sock_icmp6 -socket$icmp6_raw(domain const[AF_INET6], type const[SOCK_RAW], proto const[IPPROTO_ICMPV6]) sock_icmp6 -socketpair$icmp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[IPPROTO_ICMPV6], fds ptr[out, icmp6_pair]) -socketpair$icmp6_raw(domain const[AF_INET6], type const[SOCK_RAW], proto const[IPPROTO_ICMPV6], fds ptr[out, icmp6_pair]) -accept$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_icmp6 -accept4$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_icmp6 -bind$icmp6(fd sock_icmp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -connect$icmp6(fd sock_icmp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) -sendto$icmp6(fd sock_icmp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -recvfrom$icmp6(fd sock_icmp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) -getsockname$icmp6(fd sock_icmp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) -getpeername$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) - -icmp6_pair { - f0 sock_icmp6 - f1 sock_icmp6 -} - - - - -# AF_UNIX support. - -resource sock_unix[sock] - -socket$unix(domain const[AF_UNIX], type flags[unix_socket_type], proto const[0]) sock_unix -socketpair$unix(domain const[AF_UNIX], type flags[unix_socket_type], proto const[0], fds ptr[out, unix_pair]) -bind$unix(fd sock_unix, addr ptr[in, sockaddr_un], addrlen len[addr]) -connect$unix(fd sock_unix, addr ptr[in, sockaddr_un], addrlen len[addr]) -accept$unix(fd sock_unix, peer ptr[out, sockaddr_un, opt], peerlen ptr[inout, len[peer, int32]]) sock_unix -accept4$unix(fd sock_unix, peer ptr[out, sockaddr_un, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_unix - -sendto$unix(fd sock_unix, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_un, opt], addrlen len[addr]) -sendmsg$unix(fd sock_unix, msg ptr[in, msghdr_un], f flags[send_flags]) -sendmmsg$unix(fd sock_unix, mmsg ptr[in, array[msghdr_un]], vlen len[mmsg], f flags[send_flags]) -recvfrom$unix(fd sock_unix, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_un, opt], addrlen len[addr]) -getsockname$unix(fd sock_unix, addr ptr[out, sockaddr_un], addrlen ptr[inout, len[addr, int32]]) -getpeername$unix(fd sock_unix, peer ptr[out, sockaddr_un], peerlen ptr[inout, len[peer, int32]]) - -unix_socket_type = SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET -unix_socket_family = AF_UNIX, AF_UNSPEC - -unix_pair { - fd0 sock_unix - fd1 sock_unix -} - -sockaddr_un [ - file sockaddr_un_file - abs sockaddr_un_abstract -] [varlen] - -sockaddr_un_file { - family flags[unix_socket_family, int16] - path filename -} [packed] - -sockaddr_un_abstract { - family flags[unix_socket_family, int16] - ind const[0, int8] - id proc[int32, 20000, 4] -} - -msghdr_un { - addr ptr[in, sockaddr_un] - addrlen len[addr, int32] - vec ptr[in, array[iovec_in]] - vlen len[vec, intptr] - ctrl ptr[in, array[cmsghdr_un], opt] - ctrllen len[ctrl, intptr] - f flags[send_flags, int32] -} - -cmsghdr_un [ - rights cmsghdr_un_rights - cred cmsghdr_un_cred -] [varlen] - -cmsghdr_un_rights { - len len[parent, intptr] - level const[SOL_SOCKET, int32] - type const[SCM_RIGHTS, int32] - fds array[fd] -} [align_ptr] - -cmsghdr_un_cred { - len len[parent, intptr] - level const[SOL_SOCKET, int32] - type const[SCM_CREDENTIALS, int32] - pid pid - uid uid - gid gid -} [align_ptr] - - - - -# AF_ALG support. - -resource sock_alg[sock] -resource sock_algconn[sock] - -socket$alg(domain const[AF_ALG], type const[SOCK_SEQPACKET], proto const[0]) sock_alg -bind$alg(fd sock_alg, addr ptr[in, sockaddr_alg], addrlen len[addr]) -setsockopt$ALG_SET_KEY(fd sock_alg, level const[SOL_ALG], opt const[ALG_SET_KEY], key buffer[in], keylen len[key]) -setsockopt$ALG_SET_AEAD_AUTHSIZE(fd sock_alg, level const[SOL_ALG], opt const[ALG_SET_AEAD_AUTHSIZE], val const[0], size intptr) -accept$alg(fd sock_alg, peer ptr[out, sockaddr_alg, opt], peerlen ptr[inout, len[peer, int32]]) sock_algconn -sendmsg$alg(fd sock_algconn, msg ptr[in, msghdr_alg], f flags[send_flags]) -sendmmsg$alg(fd sock_algconn, mmsg ptr[in, array[msghdr_alg]], vlen len[mmsg], f flags[send_flags]) - -sockaddr_alg { - family const[AF_ALG, int16] - type string[salg_type, 14] - feat flags[af_alg_type, int32] - mask flags[af_alg_type, int32] - name string[salg_name, 64] -} - -msghdr_alg { - addr const[0, intptr] - addrlen const[0, int32] - vec ptr[in, array[iovec_in]] - vlen len[vec, intptr] - ctrl ptr[in, array[cmsghdr_alg], opt] - ctrllen bytesize[ctrl, intptr] - f flags[send_flags, int32] -} - -cmsghdr_alg [ - iv cmsghdr_alg_iv - op cmsghdr_alg_op - assoc cmsghdr_alg_assoc -] [varlen] - -cmsghdr_alg_iv { - len len[parent, intptr] - level const[SOL_ALG, int32] - type const[ALG_SET_IV, int32] - ivlen len[iv, int32] - iv array[int8] -} [align_ptr] - -cmsghdr_alg_op { - len len[parent, intptr] - level const[SOL_ALG, int32] - type const[ALG_SET_OP, int32] - op int32 -} [align_ptr] - -cmsghdr_alg_assoc { - len len[parent, intptr] - level const[SOL_ALG, int32] - type const[ALG_SET_AEAD_ASSOCLEN, int32] - assoc int32 -} [align_ptr] - -af_alg_type = CRYPTO_ALG_TYPE_MASK, CRYPTO_ALG_TYPE_CIPHER, CRYPTO_ALG_TYPE_COMPRESS, CRYPTO_ALG_TYPE_AEAD, CRYPTO_ALG_TYPE_BLKCIPHER, CRYPTO_ALG_TYPE_ABLKCIPHER, CRYPTO_ALG_TYPE_GIVCIPHER, CRYPTO_ALG_TYPE_DIGEST, CRYPTO_ALG_TYPE_HASH, CRYPTO_ALG_TYPE_SHASH, CRYPTO_ALG_TYPE_AHASH, CRYPTO_ALG_TYPE_RNG, CRYPTO_ALG_TYPE_AKCIPHER, CRYPTO_ALG_TYPE_PCOMPRESS, CRYPTO_ALG_LARVAL, CRYPTO_ALG_DEAD, CRYPTO_ALG_DYING, CRYPTO_ALG_ASYNC, CRYPTO_ALG_NEED_FALLBACK, CRYPTO_ALG_GENIV, CRYPTO_ALG_TESTED, CRYPTO_ALG_INSTANCE, CRYPTO_ALG_KERN_DRIVER_ONLY, CRYPTO_ALG_INTERNAL - -salg_type = "aead", "hash", "rng", "skcipher" -salg_name = "cmac(aes)", "ecb(aes)", "cbc(aes)", "hmac(sha1)", "pcbc(fcrypt)", "ghash", "jitterentropy_rng", "stdrng", "stdrng", "stdrng", "stdrng", "hmac(sha256)", "stdrng", "stdrng", "stdrng", "stdrng", "stdrng", "842", "lz4hc", "lz4", "lzo", "crct10dif", "crc32", "crc32c", "michael_mic", "zlib", "deflate", "poly1305", "chacha20", "salsa20", "seed", "anubis", "khazad", "xeta", "xtea", "tea", "ecb(arc4)", "arc4", "cast6", "cast5", "camellia", "aes", "tnepres", "serpent", "twofish", "blowfish", "fcrypt", "des3_ede", "des", "tgr128", "tgr160", "tgr192", "wp256", "wp384", "wp512", "sha384", "sha512", "sha224", "sha256", "sha1", "rmd320", "rmd256", "rmd160", "rmd128", "md5", "md4", "digest_null", "compress_null", "ecb(cipher_null)", "cipher_null", "rsa", "poly1305", "xts(serpent)", "lrw(serpent)", "ctr(serpent)", "cbc(serpent)", "__ecb-serpent-sse2", "ecb(serpent)", "__xts-serpent-sse2", "__lrw-serpent-sse2", "__ctr-serpent-sse2", "__cbc-serpent-sse2", "__ecb-serpent-sse2", "salsa20", "xts(twofish)", "lrw(twofish)", "ctr(twofish)", "cbc(twofish)", "ecb(twofish)", "twofish", "ctr(blowfish)", "cbc(blowfish)", "ecb(blowfish)", "blowfish", "xts(camellia)", "lrw(camellia)", "ctr(camellia)", "cbc(camellia)", "ecb(camellia)", "camellia", "ctr(des3_ede)", "cbc(des3_ede)", "ecb(des3_ede)", "des3_ede", "aes" - - - - -# AF_KEY support. - -resource sock_key[sock] - -# See net/key/af_key.c, requires root. -# socket$key(domain const[AF_KEY], type const[SOCK_RAW], proto const[PF_KEY_V2]) sock_key - - - - -# AF_NFC support. - -resource sock_nfc_llcp[sock] - -socket$nfc_llcp(domain const[AF_NFC], type flags[nfc_llcp_type], proto const[NFC_SOCKPROTO_LLCP]) sock_nfc_llcp -bind$nfc_llcp(fd sock_nfc_llcp, addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) -connect$nfc_llcp(fd sock_nfc_llcp, addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) -accept$nfc_llcp(fd sock_nfc_llcp, peer ptr[out, sockaddr_nfc_llcp, opt], peerlen ptr[inout, len[peer, int32]]) sock_nfc_llcp -setsockopt$NFC_LLCP_RW(fd sock_nfc_llcp, level const[SOL_NFC], opt const[NFC_LLCP_RW], arg ptr[in, int32], arglen len[arg]) -setsockopt$NFC_LLCP_MIUX(fd sock_nfc_llcp, level const[SOL_NFC], opt const[NFC_LLCP_MIUX], arg ptr[in, int32], arglen len[arg]) -getsockopt$nfc_llcp(fd sock_nfc_llcp, level const[SOL_NFC], opt flags[nfc_llcp_opts], arg buffer[out], arglen len[arg]) -sendmsg$nfc_llcp(fd sock_nfc_llcp, msg ptr[in, nfc_llcp_send_msghdr], f flags[send_flags]) -sendmmsg$nfc_llcp(fd sock_nfc_llcp, mmsg ptr[in, array[nfc_llcp_send_msghdr]], vlen len[mmsg], f flags[send_flags]) - -resource sock_nfc_raw[sock] - -socket$nfc_raw(domain const[AF_NFC], type flags[nfc_raw_type], proto const[NFC_SOCKPROTO_RAW]) sock_nfc_raw -connect$nfc_raw(fd sock_nfc_raw, addr ptr[in, sockaddr_nfc], addrlen len[addr]) - -nfc_llcp_type = SOCK_STREAM, SOCK_DGRAM, SOCK_RAW -nfc_raw_type = SOCK_STREAM, SOCK_RAW -nfc_proto = NFC_PROTO_JEWEL, NFC_PROTO_MIFARE, NFC_PROTO_FELICA, NFC_PROTO_ISO14443, NFC_PROTO_NFC_DEP, NFC_PROTO_ISO14443_B, NFC_PROTO_ISO15693 -nfc_llcp_opts = NFC_LLCP_RW, NFC_LLCP_MIUX, NFC_LLCP_REMOTE_MIU, NFC_LLCP_REMOTE_LTO, NFC_LLCP_REMOTE_RW - -sockaddr_nfc_llcp { - family const[AF_NFC, int16] - devidx int32 - target int32 - proto flags[nfc_proto, int32] - dsap int8 - ssap int8 - serv array[int8, 63] - servlen intptr -} - -sockaddr_nfc { - family const[AF_NFC, int16] - dev int32 - targ int32 - proto flags[nfc_proto, int32] -} - -nfc_llcp_send_msghdr { - addr ptr[in, sockaddr_nfc_llcp] - addrlen len[addr, int32] - vec ptr[in, array[iovec_in]] - vlen len[vec, intptr] - ctrl ptr[in, cmsghdr] - ctrllen len[ctrl, intptr] - f flags[send_flags, int32] -} - - - - -# AF_BLUETOOTH support. - -resource sock_bt[sock] -resource sock_bt_hci[sock_bt] - -socket$bt_hci(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_HCI]) sock_bt_hci -bind$bt_hci(fd sock_bt_hci, addr ptr[in, sockaddr_hci], addrlen len[addr]) -ioctl$bt_hci(fd sock_bt_hci, cmd flags[bt_hci_ioctl], arg buffer[inout]) -setsockopt$HCI_DATA_DIR(fd sock_bt_hci, level const[0], opt const[HCI_DATA_DIR], arg ptr[in, int32], arglen len[arg]) -setsockopt$HCI_TIME_STAMP(fd sock_bt_hci, level const[0], opt const[HCI_TIME_STAMP], arg ptr[in, int32], arglen len[arg]) -setsockopt$HCI_FILTER(fd sock_bt_hci, level const[0], opt const[HCI_FILTER], arg ptr[in, hci_ufilter], arglen len[arg]) -getsockopt$bt_hci(fd sock, level const[0], opt flags[bt_hci_sockopt], arg buffer[out], arglen ptr[inout, len[arg, int32]]) - -resource sock_bt_sco[sock_bt] - -socket$bt_sco(fam const[AF_BLUETOOTH], type const[SOCK_SEQPACKET], proto const[BTPROTO_SCO]) sock_bt_sco -bind$bt_sco(fd sock_bt_sco, addr ptr[in, sockaddr_sco], addrlen len[addr]) -connect$bt_sco(fd sock_bt_sco, addr ptr[in, sockaddr_sco], addrlen len[addr]) -getsockopt$SCO_OPTIONS(fd sock_bt_sco, level const[SOL_SCO], opt const[SCO_OPTIONS], arg buffer[out], arglen ptr[inout, len[arg, int32]]) -getsockopt$SCO_CONNINFO(fd sock_bt_sco, level const[SOL_SCO], opt const[SCO_CONNINFO], arg buffer[out], arglen ptr[inout, len[arg, int32]]) - -resource sock_bt_l2cap[sock_bt] - -socket$bt_l2cap(fam const[AF_BLUETOOTH], type flags[bt_l2cap_type], proto const[BTPROTO_L2CAP]) sock_bt_l2cap -bind$bt_l2cap(fd sock_bt_l2cap, addr ptr[in, sockaddr_l2], addrlen len[addr]) -connect$bt_l2cap(fd sock_bt_l2cap, addr ptr[in, sockaddr_l2], addrlen len[addr]) -setsockopt$L2CAP_OPTIONS(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_OPTIONS], arg ptr[in, l2cap_options], arglen len[arg]) -getsockopt$L2CAP_OPTIONS(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_OPTIONS], arg ptr[out, l2cap_options], arglen ptr[inout, len[arg, int32]]) -setsockopt$L2CAP_LM(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_LM], arg ptr[in, flags[bt_l2cap_lm, int32]], arglen len[arg]) -getsockopt$L2CAP_LM(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_LM], arg ptr[out, int32], arglen ptr[inout, len[arg, int32]]) -setsockopt$L2CAP_CONNINFO(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_CONNINFO], arg ptr[in, l2cap_conninfo], arglen len[arg]) -getsockopt$L2CAP_CONNINFO(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_CONNINFO], arg ptr[out, l2cap_conninfo], arglen ptr[inout, len[arg, int32]]) - -resource sock_bt_rfcomm[sock_bt] - -socket$bt_rfcomm(fam const[AF_BLUETOOTH], type flags[bt_rfcomm_type], proto const[BTPROTO_RFCOMM]) sock_bt_rfcomm -bind$bt_rfcomm(fd sock_bt_rfcomm, addr ptr[in, sockaddr_rc], addrlen len[addr]) -connect$bt_rfcomm(fd sock_bt_rfcomm, addr ptr[in, sockaddr_rc], addrlen len[addr]) -setsockopt$RFCOMM_LM(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_LM], arg ptr[in, flags[bt_l2cap_lm, int32]], arglen len[arg]) -getsockopt$RFCOMM_LM(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_LM], arg ptr[out, int32], arglen ptr[inout, len[arg, int32]]) -getsockopt$RFCOMM_CONNINFO(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_CONNINFO], arg buffer[out], arglen ptr[inout, len[arg, int32]]) - -resource sock_bt_hidp[sock_bt] - -socket$bt_hidp(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_HIDP]) sock_bt_hidp -ioctl$HIDPCONNADD(fd sock_bt_hidp, cmd const[HIDPCONNADD], arg ptr[in, hidp_connadd_req]) -ioctl$HIDPCONNDEL(fd sock_bt_hidp, cmd const[HIDPCONNDEL], arg ptr[in, hidp_conndel_req]) -ioctl$HIDPGETCONNLIST(fd sock_bt_hidp, cmd const[HIDPGETCONNLIST], arg ptr[in, hidp_connlist_req]) -ioctl$HIDPGETCONNINFO(fd sock_bt_hidp, cmd const[HIDPGETCONNINFO], arg ptr[in, hidp_conninfo]) - -resource sock_bt_cmtp[sock_bt] - -socket$bt_cmtp(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_CMTP]) sock_bt_cmtp -ioctl$CMTPCONNADD(fd sock_bt_cmtp, cmd const[CMTPCONNADD], arg ptr[in, cmtp_connadd_req]) -ioctl$CMTPCONNDEL(fd sock_bt_cmtp, cmd const[CMTPCONNDEL], arg ptr[in, cmtp_conndel_req]) -ioctl$CMTPGETCONNLIST(fd sock_bt_cmtp, cmd const[CMTPGETCONNLIST], arg ptr[in, cmtp_connlist_req]) -ioctl$CMTPGETCONNINFO(fd sock_bt_cmtp, cmd const[CMTPGETCONNINFO], arg ptr[in, cmtp_conninfo]) - -resource sock_bt_bnep[sock_bt] - -socket$bt_bnep(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_BNEP]) sock_bt_bnep -ioctl$BNEPCONNADD(fd sock_bt_bnep, cmd const[BNEPCONNADD], arg ptr[in, bnep_connadd_req]) -ioctl$BNEPCONNDEL(fd sock_bt_bnep, cmd const[BNEPCONNDEL], arg ptr[in, bnep_conndel_req]) -ioctl$BNEPGETCONNLIST(fd sock_bt_bnep, cmd const[BNEPGETCONNLIST], arg ptr[in, bnep_connlist_req]) -ioctl$BNEPGETCONNINFO(fd sock_bt_bnep, cmd const[BNEPGETCONNINFO], arg ptr[in, bnep_conninfo]) -ioctl$BNEPGETSUPPFEAT(fd sock_bt_bnep, cmd const[BNEPGETSUPPFEAT], arg ptr[in, int32]) - -ioctl$bt(fd sock_bt, cmd flags[bt_ioctl], arg buffer[inout]) -setsockopt$BT_SECURITY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SECURITY], arg ptr[in, bt_security], arglen len[arg]) -getsockopt$BT_SECURITY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SECURITY], arg ptr[out, bt_security], arglen len[arg]) -setsockopt$BT_DEFER_SETUP(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_DEFER_SETUP], arg ptr[in, int32], arglen len[arg]) -getsockopt$BT_DEFER_SETUP(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_DEFER_SETUP], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_VOICE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_VOICE], arg ptr[in, int16], arglen len[arg]) -getsockopt$BT_VOICE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_VOICE], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_FLUSHABLE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_FLUSHABLE], arg ptr[in, int32], arglen len[arg]) -getsockopt$BT_FLUSHABLE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_FLUSHABLE], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_POWER(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_POWER], arg ptr[in, int8], arglen len[arg]) -getsockopt$BT_POWER(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_POWER], arg ptr[in, int8], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_CHANNEL_POLICY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_CHANNEL_POLICY], arg ptr[in, int32], arglen len[arg]) -getsockopt$BT_CHANNEL_POLICY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_CHANNEL_POLICY], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_SNDMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SNDMTU], arg ptr[in, int16], arglen len[arg]) -getsockopt$BT_SNDMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SNDMTU], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) -setsockopt$BT_RCVMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_RCVMTU], arg ptr[in, int16], arglen len[arg]) -getsockopt$BT_RCVMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_RCVMTU], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) - -sockaddr_hci { - fam const[AF_BLUETOOTH, int16] - dev int16 - chan flags[bt_chi_chan, int16] -} - -hci_inquiry_req { - dev int16 - flags int16 - lap0 int8 - lap1 int8 - lap2 int8 - len int8 - rsp int8 -} - -hci_ufilter { - type int32 - event0 int32 - event1 int32 - opcode int16 -} - -sockaddr_sco { - fam const[AF_BLUETOOTH, int16] - addr bdaddr -} - -sockaddr_l2 { - fam const[AF_BLUETOOTH, int16] - psm int16 - addr bdaddr - cid int16 - typ int8 -} - -bdaddr { - addr0 int8 - addr1 int8 - addr2 int8 - addr3 int8 - addr4 int8 - addr5 int8 -} - -bt_security { - lev int8 - keysize int8 -} - -l2cap_options { - omtu int16 - imtu int16 - flushto int16 - mode int8 - fcs int8 - maxtx int8 - txwin int16 -} - -l2cap_conninfo { - handle int16 - devcls0 int8 - devcls1 int8 - devcls2 int8 -} - -sockaddr_rc { - fam const[AF_BLUETOOTH, int16] - addr bdaddr - chan int8 -} - -hidp_connadd_req { - ctrlsk sock - intrsk sock - parser int16 - rdsize int16 - rddata buffer[in] - country int8 - subclas int8 - vendor int16 - product int16 - version int16 - flags int32 - idleto int32 - name array[int8] -} - -hidp_conndel_req { - addr bdaddr - flags int32 -} - -hidp_conninfo { - addr bdaddr - flags int32 - state int16 - vendor int16 - product int16 - ver int16 - name array[int8] -} - -hidp_connlist_req { - cnum len[ci, int32] - ci ptr[out, array[hidp_conninfo]] -} - -cmtp_connadd_req { - sock sock - flags int32 -} - -cmtp_conndel_req { - addr bdaddr - flags int32 -} - -cmtp_conninfo { - addr bdaddr - flags int32 - state int16 - num int32 -} - -cmtp_connlist_req { - cnum len[ci, int32] - ci ptr[out, array[cmtp_conninfo]] -} - -bnep_connadd_req { - sock sock - flags int32 - role int16 - device array[int8] -} - -bnep_conndel_req { - flags int32 - dst array[int8, 6] -} - -bnep_conninfo { - flags int32 - role int16 - state int16 - dst array[int8, 6] - device array[int8, 16] -} - -bnep_connlist_req { - cnum len[ci, int32] - ci ptr[out, array[bnep_conninfo]] -} - -bt_chi_chan = HCI_CHANNEL_RAW, HCI_CHANNEL_USER, HCI_CHANNEL_MONITOR, HCI_CHANNEL_CONTROL -bt_hci_ioctl = HCIDEVUP, HCIDEVDOWN, HCIDEVRESET, HCIDEVRESTAT, HCIGETDEVLIST, HCIGETDEVINFO, HCIGETCONNLIST, HCIGETCONNINFO, HCIGETAUTHINFO, HCISETRAW, HCISETSCAN, HCISETAUTH, HCISETENCRYPT, HCISETPTYPE, HCISETLINKPOL, HCISETLINKMODE, HCISETACLMTU, HCISETSCOMTU, HCIBLOCKADDR, HCIUNBLOCKADDR, HCIINQUIRY -bt_hci_sockopt = HCI_DATA_DIR, HCI_TIME_STAMP, HCI_FILTER -bt_ioctl = TIOCOUTQ, TIOCINQ, SIOCGSTAMP, SIOCGSTAMPNS -bt_l2cap_type = SOCK_SEQPACKET, SOCK_STREAM, SOCK_DGRAM, SOCK_RAW -bt_l2cap_lm = L2CAP_LM_MASTER, L2CAP_LM_AUTH, L2CAP_LM_ENCRYPT, L2CAP_LM_TRUSTED, L2CAP_LM_RELIABLE, L2CAP_LM_SECURE, L2CAP_LM_FIPS -bt_rfcomm_type = SOCK_STREAM, SOCK_RAW - -# Removed in next-20160210 (commit 11049218) -define CRYPTO_ALG_TYPE_PCOMPRESS 0x0000000f diff --git a/sys/socket_alg.txt b/sys/socket_alg.txt new file mode 100644 index 000000000..36f88772f --- /dev/null +++ b/sys/socket_alg.txt @@ -0,0 +1,74 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_ALG support. + +include <linux/socket.h> +include <linux/net.h> +include <linux/crypto.h> +include <uapi/linux/if_alg.h> + +resource sock_alg[sock] +resource sock_algconn[sock] + +socket$alg(domain const[AF_ALG], type const[SOCK_SEQPACKET], proto const[0]) sock_alg +bind$alg(fd sock_alg, addr ptr[in, sockaddr_alg], addrlen len[addr]) +setsockopt$ALG_SET_KEY(fd sock_alg, level const[SOL_ALG], opt const[ALG_SET_KEY], key buffer[in], keylen len[key]) +setsockopt$ALG_SET_AEAD_AUTHSIZE(fd sock_alg, level const[SOL_ALG], opt const[ALG_SET_AEAD_AUTHSIZE], val const[0], size intptr) +accept$alg(fd sock_alg, peer ptr[out, sockaddr_alg, opt], peerlen ptr[inout, len[peer, int32]]) sock_algconn +sendmsg$alg(fd sock_algconn, msg ptr[in, msghdr_alg], f flags[send_flags]) +sendmmsg$alg(fd sock_algconn, mmsg ptr[in, array[msghdr_alg]], vlen len[mmsg], f flags[send_flags]) + +sockaddr_alg { + family const[AF_ALG, int16] + type string[salg_type, 14] + feat flags[af_alg_type, int32] + mask flags[af_alg_type, int32] + name string[salg_name, 64] +} + +msghdr_alg { + addr const[0, intptr] + addrlen const[0, int32] + vec ptr[in, array[iovec_in]] + vlen len[vec, intptr] + ctrl ptr[in, array[cmsghdr_alg], opt] + ctrllen bytesize[ctrl, intptr] + f flags[send_flags, int32] +} + +cmsghdr_alg [ + iv cmsghdr_alg_iv + op cmsghdr_alg_op + assoc cmsghdr_alg_assoc +] [varlen] + +cmsghdr_alg_iv { + len len[parent, intptr] + level const[SOL_ALG, int32] + type const[ALG_SET_IV, int32] + ivlen len[iv, int32] + iv array[int8] +} [align_ptr] + +cmsghdr_alg_op { + len len[parent, intptr] + level const[SOL_ALG, int32] + type const[ALG_SET_OP, int32] + op int32 +} [align_ptr] + +cmsghdr_alg_assoc { + len len[parent, intptr] + level const[SOL_ALG, int32] + type const[ALG_SET_AEAD_ASSOCLEN, int32] + assoc int32 +} [align_ptr] + +af_alg_type = CRYPTO_ALG_TYPE_MASK, CRYPTO_ALG_TYPE_CIPHER, CRYPTO_ALG_TYPE_COMPRESS, CRYPTO_ALG_TYPE_AEAD, CRYPTO_ALG_TYPE_BLKCIPHER, CRYPTO_ALG_TYPE_ABLKCIPHER, CRYPTO_ALG_TYPE_GIVCIPHER, CRYPTO_ALG_TYPE_DIGEST, CRYPTO_ALG_TYPE_HASH, CRYPTO_ALG_TYPE_SHASH, CRYPTO_ALG_TYPE_AHASH, CRYPTO_ALG_TYPE_RNG, CRYPTO_ALG_TYPE_AKCIPHER, CRYPTO_ALG_TYPE_PCOMPRESS, CRYPTO_ALG_LARVAL, CRYPTO_ALG_DEAD, CRYPTO_ALG_DYING, CRYPTO_ALG_ASYNC, CRYPTO_ALG_NEED_FALLBACK, CRYPTO_ALG_GENIV, CRYPTO_ALG_TESTED, CRYPTO_ALG_INSTANCE, CRYPTO_ALG_KERN_DRIVER_ONLY, CRYPTO_ALG_INTERNAL + +salg_type = "aead", "hash", "rng", "skcipher" +salg_name = "cmac(aes)", "ecb(aes)", "cbc(aes)", "hmac(sha1)", "pcbc(fcrypt)", "ghash", "jitterentropy_rng", "stdrng", "stdrng", "stdrng", "stdrng", "hmac(sha256)", "stdrng", "stdrng", "stdrng", "stdrng", "stdrng", "842", "lz4hc", "lz4", "lzo", "crct10dif", "crc32", "crc32c", "michael_mic", "zlib", "deflate", "poly1305", "chacha20", "salsa20", "seed", "anubis", "khazad", "xeta", "xtea", "tea", "ecb(arc4)", "arc4", "cast6", "cast5", "camellia", "aes", "tnepres", "serpent", "twofish", "blowfish", "fcrypt", "des3_ede", "des", "tgr128", "tgr160", "tgr192", "wp256", "wp384", "wp512", "sha384", "sha512", "sha224", "sha256", "sha1", "rmd320", "rmd256", "rmd160", "rmd128", "md5", "md4", "digest_null", "compress_null", "ecb(cipher_null)", "cipher_null", "rsa", "poly1305", "xts(serpent)", "lrw(serpent)", "ctr(serpent)", "cbc(serpent)", "__ecb-serpent-sse2", "ecb(serpent)", "__xts-serpent-sse2", "__lrw-serpent-sse2", "__ctr-serpent-sse2", "__cbc-serpent-sse2", "__ecb-serpent-sse2", "salsa20", "xts(twofish)", "lrw(twofish)", "ctr(twofish)", "cbc(twofish)", "ecb(twofish)", "twofish", "ctr(blowfish)", "cbc(blowfish)", "ecb(blowfish)", "blowfish", "xts(camellia)", "lrw(camellia)", "ctr(camellia)", "cbc(camellia)", "ecb(camellia)", "camellia", "ctr(des3_ede)", "cbc(des3_ede)", "ecb(des3_ede)", "des3_ede", "aes" + +# Removed in next-20160210 (commit 11049218) +define CRYPTO_ALG_TYPE_PCOMPRESS 0x0000000f diff --git a/sys/socket_alg_amd64.const b/sys/socket_alg_amd64.const new file mode 100644 index 000000000..8bdb46c24 --- /dev/null +++ b/sys/socket_alg_amd64.const @@ -0,0 +1,39 @@ +# AUTOGENERATED FILE +AF_ALG = 38 +ALG_SET_AEAD_ASSOCLEN = 4 +ALG_SET_AEAD_AUTHSIZE = 5 +ALG_SET_IV = 2 +ALG_SET_KEY = 1 +ALG_SET_OP = 3 +CRYPTO_ALG_ASYNC = 128 +CRYPTO_ALG_DEAD = 32 +CRYPTO_ALG_DYING = 64 +CRYPTO_ALG_GENIV = 512 +CRYPTO_ALG_INSTANCE = 2048 +CRYPTO_ALG_INTERNAL = 8192 +CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 +CRYPTO_ALG_LARVAL = 16 +CRYPTO_ALG_NEED_FALLBACK = 256 +CRYPTO_ALG_TESTED = 1024 +CRYPTO_ALG_TYPE_ABLKCIPHER = 5 +CRYPTO_ALG_TYPE_AEAD = 3 +CRYPTO_ALG_TYPE_AHASH = 15 +CRYPTO_ALG_TYPE_AKCIPHER = 13 +CRYPTO_ALG_TYPE_BLKCIPHER = 4 +CRYPTO_ALG_TYPE_CIPHER = 1 +CRYPTO_ALG_TYPE_COMPRESS = 2 +CRYPTO_ALG_TYPE_DIGEST = 14 +CRYPTO_ALG_TYPE_GIVCIPHER = 6 +CRYPTO_ALG_TYPE_HASH = 14 +CRYPTO_ALG_TYPE_MASK = 15 +CRYPTO_ALG_TYPE_PCOMPRESS = 15 +CRYPTO_ALG_TYPE_RNG = 12 +CRYPTO_ALG_TYPE_SHASH = 14 +SOCK_SEQPACKET = 5 +SOL_ALG = 279 +__NR_accept = 43 +__NR_bind = 49 +__NR_sendmmsg = 307 +__NR_sendmsg = 46 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_alg_arm64.const b/sys/socket_alg_arm64.const new file mode 100644 index 000000000..0da690d0a --- /dev/null +++ b/sys/socket_alg_arm64.const @@ -0,0 +1,39 @@ +# AUTOGENERATED FILE +AF_ALG = 38 +ALG_SET_AEAD_ASSOCLEN = 4 +ALG_SET_AEAD_AUTHSIZE = 5 +ALG_SET_IV = 2 +ALG_SET_KEY = 1 +ALG_SET_OP = 3 +CRYPTO_ALG_ASYNC = 128 +CRYPTO_ALG_DEAD = 32 +CRYPTO_ALG_DYING = 64 +CRYPTO_ALG_GENIV = 512 +CRYPTO_ALG_INSTANCE = 2048 +CRYPTO_ALG_INTERNAL = 8192 +CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 +CRYPTO_ALG_LARVAL = 16 +CRYPTO_ALG_NEED_FALLBACK = 256 +CRYPTO_ALG_TESTED = 1024 +CRYPTO_ALG_TYPE_ABLKCIPHER = 5 +CRYPTO_ALG_TYPE_AEAD = 3 +CRYPTO_ALG_TYPE_AHASH = 15 +CRYPTO_ALG_TYPE_AKCIPHER = 13 +CRYPTO_ALG_TYPE_BLKCIPHER = 4 +CRYPTO_ALG_TYPE_CIPHER = 1 +CRYPTO_ALG_TYPE_COMPRESS = 2 +CRYPTO_ALG_TYPE_DIGEST = 14 +CRYPTO_ALG_TYPE_GIVCIPHER = 6 +CRYPTO_ALG_TYPE_HASH = 14 +CRYPTO_ALG_TYPE_MASK = 15 +CRYPTO_ALG_TYPE_PCOMPRESS = 15 +CRYPTO_ALG_TYPE_RNG = 12 +CRYPTO_ALG_TYPE_SHASH = 14 +SOCK_SEQPACKET = 5 +SOL_ALG = 279 +__NR_accept = 202 +__NR_bind = 200 +__NR_sendmmsg = 269 +__NR_sendmsg = 211 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_alg_ppc64le.const b/sys/socket_alg_ppc64le.const new file mode 100644 index 000000000..43eca7c92 --- /dev/null +++ b/sys/socket_alg_ppc64le.const @@ -0,0 +1,39 @@ +# AUTOGENERATED FILE +AF_ALG = 38 +ALG_SET_AEAD_ASSOCLEN = 4 +ALG_SET_AEAD_AUTHSIZE = 5 +ALG_SET_IV = 2 +ALG_SET_KEY = 1 +ALG_SET_OP = 3 +CRYPTO_ALG_ASYNC = 128 +CRYPTO_ALG_DEAD = 32 +CRYPTO_ALG_DYING = 64 +CRYPTO_ALG_GENIV = 512 +CRYPTO_ALG_INSTANCE = 2048 +CRYPTO_ALG_INTERNAL = 8192 +CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 +CRYPTO_ALG_LARVAL = 16 +CRYPTO_ALG_NEED_FALLBACK = 256 +CRYPTO_ALG_TESTED = 1024 +CRYPTO_ALG_TYPE_ABLKCIPHER = 5 +CRYPTO_ALG_TYPE_AEAD = 3 +CRYPTO_ALG_TYPE_AHASH = 15 +CRYPTO_ALG_TYPE_AKCIPHER = 13 +CRYPTO_ALG_TYPE_BLKCIPHER = 4 +CRYPTO_ALG_TYPE_CIPHER = 1 +CRYPTO_ALG_TYPE_COMPRESS = 2 +CRYPTO_ALG_TYPE_DIGEST = 14 +CRYPTO_ALG_TYPE_GIVCIPHER = 6 +CRYPTO_ALG_TYPE_HASH = 14 +CRYPTO_ALG_TYPE_MASK = 15 +CRYPTO_ALG_TYPE_PCOMPRESS = 15 +CRYPTO_ALG_TYPE_RNG = 12 +CRYPTO_ALG_TYPE_SHASH = 14 +SOCK_SEQPACKET = 5 +SOL_ALG = 279 +__NR_accept = 330 +__NR_bind = 327 +__NR_sendmmsg = 349 +__NR_sendmsg = 341 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/socket_amd64.const b/sys/socket_amd64.const index 6eae25fc5..fe4c4b0a9 100644 --- a/sys/socket_amd64.const +++ b/sys/socket_amd64.const @@ -1,188 +1,14 @@ # AUTOGENERATED FILE -AF_ALG = 38 AF_APPLETALK = 5 AF_ATMPVC = 8 AF_AX25 = 3 -AF_BLUETOOTH = 31 AF_INET = 2 AF_INET6 = 10 AF_IPX = 4 AF_NETLINK = 16 -AF_NFC = 39 AF_PACKET = 17 AF_UNIX = 1 -AF_UNSPEC = 0 AF_X25 = 9 -ALG_SET_AEAD_ASSOCLEN = 4 -ALG_SET_AEAD_AUTHSIZE = 5 -ALG_SET_IV = 2 -ALG_SET_KEY = 1 -ALG_SET_OP = 3 -BNEPCONNADD = 1074021064 -BNEPCONNDEL = 1074021065 -BNEPGETCONNINFO = 2147762899 -BNEPGETCONNLIST = 2147762898 -BNEPGETSUPPFEAT = 2147762900 -BTPROTO_BNEP = 4 -BTPROTO_CMTP = 5 -BTPROTO_HCI = 1 -BTPROTO_HIDP = 6 -BTPROTO_L2CAP = 0 -BTPROTO_RFCOMM = 3 -BTPROTO_SCO = 2 -BT_CHANNEL_POLICY = 10 -BT_DEFER_SETUP = 7 -BT_FLUSHABLE = 8 -BT_POWER = 9 -BT_RCVMTU = 13 -BT_SECURITY = 4 -BT_SNDMTU = 12 -BT_VOICE = 11 -CMTPCONNADD = 1074021320 -CMTPCONNDEL = 1074021321 -CMTPGETCONNINFO = 2147763155 -CMTPGETCONNLIST = 2147763154 -CRYPTO_ALG_ASYNC = 128 -CRYPTO_ALG_DEAD = 32 -CRYPTO_ALG_DYING = 64 -CRYPTO_ALG_GENIV = 512 -CRYPTO_ALG_INSTANCE = 2048 -CRYPTO_ALG_INTERNAL = 8192 -CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 -CRYPTO_ALG_LARVAL = 16 -CRYPTO_ALG_NEED_FALLBACK = 256 -CRYPTO_ALG_TESTED = 1024 -CRYPTO_ALG_TYPE_ABLKCIPHER = 5 -CRYPTO_ALG_TYPE_AEAD = 3 -CRYPTO_ALG_TYPE_AHASH = 15 -CRYPTO_ALG_TYPE_AKCIPHER = 13 -CRYPTO_ALG_TYPE_BLKCIPHER = 4 -CRYPTO_ALG_TYPE_CIPHER = 1 -CRYPTO_ALG_TYPE_COMPRESS = 2 -CRYPTO_ALG_TYPE_DIGEST = 14 -CRYPTO_ALG_TYPE_GIVCIPHER = 6 -CRYPTO_ALG_TYPE_HASH = 14 -CRYPTO_ALG_TYPE_MASK = 15 -CRYPTO_ALG_TYPE_PCOMPRESS = 15 -CRYPTO_ALG_TYPE_RNG = 12 -CRYPTO_ALG_TYPE_SHASH = 14 -HCIBLOCKADDR = 1074022630 -HCIDEVDOWN = 1074022602 -HCIDEVRESET = 1074022603 -HCIDEVRESTAT = 1074022604 -HCIDEVUP = 1074022601 -HCIGETAUTHINFO = 2147764439 -HCIGETCONNINFO = 2147764437 -HCIGETCONNLIST = 2147764436 -HCIGETDEVINFO = 2147764435 -HCIGETDEVLIST = 2147764434 -HCIINQUIRY = 2147764464 -HCISETACLMTU = 1074022627 -HCISETAUTH = 1074022622 -HCISETENCRYPT = 1074022623 -HCISETLINKMODE = 1074022626 -HCISETLINKPOL = 1074022625 -HCISETPTYPE = 1074022624 -HCISETRAW = 1074022620 -HCISETSCAN = 1074022621 -HCISETSCOMTU = 1074022628 -HCIUNBLOCKADDR = 1074022631 -HCI_CHANNEL_CONTROL = 3 -HCI_CHANNEL_MONITOR = 2 -HCI_CHANNEL_RAW = 0 -HCI_CHANNEL_USER = 1 -HCI_DATA_DIR = 1 -HCI_FILTER = 2 -HCI_TIME_STAMP = 3 -HIDPCONNADD = 1074022600 -HIDPCONNDEL = 1074022601 -HIDPGETCONNINFO = 2147764435 -HIDPGETCONNLIST = 2147764434 -IPPROTO_ICMP = 1 -IPPROTO_IP = 0 -IPPROTO_IPV6 = 41 -IPPROTO_TCP = 6 -IPPROTO_UDP = 17 -IPV6_2292DSTOPTS = 4 -IPV6_2292HOPLIMIT = 8 -IPV6_2292HOPOPTS = 3 -IPV6_2292PKTINFO = 2 -IPV6_2292PKTOPTIONS = 6 -IPV6_2292RTHDR = 5 -IPV6_ADDRFORM = 1 -IPV6_ADD_MEMBERSHIP = 20 -IPV6_AUTHHDR = 10 -IPV6_CHECKSUM = 7 -IPV6_DROP_MEMBERSHIP = 21 -IPV6_DSTOPTS = 59 -IPV6_FLOWINFO = 11 -IPV6_HOPLIMIT = 52 -IPV6_HOPOPTS = 54 -IPV6_JOIN_ANYCAST = 27 -IPV6_LEAVE_ANYCAST = 28 -IPV6_MTU = 24 -IPV6_MTU_DISCOVER = 23 -IPV6_MULTICAST_HOPS = 18 -IPV6_MULTICAST_IF = 17 -IPV6_MULTICAST_LOOP = 19 -IPV6_RECVERR = 25 -IPV6_RECVPKTINFO = 49 -IPV6_ROUTER_ALERT = 22 -IPV6_RTHDR = 57 -IPV6_UNICAST_HOPS = 16 -IPV6_V6ONLY = 26 -IP_ADD_MEMBERSHIP = 35 -IP_ADD_SOURCE_MEMBERSHIP = 39 -IP_BIND_ADDRESS_NO_PORT = 24 -IP_BLOCK_SOURCE = 38 -IP_CHECKSUM = 23 -IP_DROP_MEMBERSHIP = 36 -IP_DROP_SOURCE_MEMBERSHIP = 40 -IP_FREEBIND = 15 -IP_HDRINCL = 3 -IP_IPSEC_POLICY = 16 -IP_MINTTL = 21 -IP_MSFILTER = 41 -IP_MTU = 14 -IP_MTU_DISCOVER = 10 -IP_MULTICAST_ALL = 49 -IP_MULTICAST_IF = 32 -IP_MULTICAST_LOOP = 34 -IP_MULTICAST_TTL = 33 -IP_NODEFRAG = 22 -IP_OPTIONS = 4 -IP_PASSSEC = 18 -IP_PKTINFO = 8 -IP_PKTOPTIONS = 9 -IP_PMTUDISC_DO = 2 -IP_PMTUDISC_DONT = 0 -IP_PMTUDISC_INTERFACE = 4 -IP_PMTUDISC_OMIT = 5 -IP_PMTUDISC_PROBE = 3 -IP_PMTUDISC_WANT = 1 -IP_RECVERR = 11 -IP_RECVOPTS = 6 -IP_RECVORIGDSTADDR = 20 -IP_RECVTOS = 13 -IP_RECVTTL = 12 -IP_RETOPTS = 7 -IP_ROUTER_ALERT = 5 -IP_TOS = 1 -IP_TRANSPARENT = 19 -IP_TTL = 2 -IP_UNBLOCK_SOURCE = 37 -L2CAP_CONNINFO = 2 -L2CAP_LM = 3 -L2CAP_LM_AUTH = 2 -L2CAP_LM_ENCRYPT = 4 -L2CAP_LM_FIPS = 64 -L2CAP_LM_MASTER = 1 -L2CAP_LM_RELIABLE = 16 -L2CAP_LM_SECURE = 32 -L2CAP_LM_TRUSTED = 8 -L2CAP_OPTIONS = 1 -MCAST_EXCLUDE = 0 -MCAST_INCLUDE = 1 MSG_BATCH = 262144 MSG_CMSG_CLOEXEC = 1073741824 MSG_CONFIRM = 2048 @@ -199,30 +25,8 @@ MSG_PROBE = 16 MSG_TRUNC = 32 MSG_WAITALL = 256 MSG_WAITFORONE = 65536 -NFC_LLCP_MIUX = 1 -NFC_LLCP_REMOTE_LTO = 3 -NFC_LLCP_REMOTE_MIU = 2 -NFC_LLCP_REMOTE_RW = 4 -NFC_LLCP_RW = 0 -NFC_PROTO_FELICA = 3 -NFC_PROTO_ISO14443 = 4 -NFC_PROTO_ISO14443_B = 6 -NFC_PROTO_ISO15693 = 7 -NFC_PROTO_JEWEL = 1 -NFC_PROTO_MIFARE = 2 -NFC_PROTO_NFC_DEP = 5 -NFC_SOCKPROTO_LLCP = 1 -NFC_SOCKPROTO_RAW = 0 -RFCOMM_CONNINFO = 2 -RFCOMM_LM = 3 -SCM_CREDENTIALS = 2 -SCM_RIGHTS = 1 -SCO_CONNINFO = 2 -SCO_OPTIONS = 1 SHUT_RD = 0 SHUT_WR = 1 -SIOCGSTAMP = 35078 -SIOCGSTAMPNS = 35079 SIOCINQ = 21531 SIOCOUTQ = 21521 SOCK_CLOEXEC = 524288 @@ -245,43 +49,7 @@ SOF_TIMESTAMPING_TX_ACK = 512 SOF_TIMESTAMPING_TX_HARDWARE = 1 SOF_TIMESTAMPING_TX_SCHED = 256 SOF_TIMESTAMPING_TX_SOFTWARE = 2 -SOL_AAL = 265 -SOL_ALG = 279 -SOL_ATALK = 258 -SOL_ATM = 264 -SOL_AX25 = 257 -SOL_BLUETOOTH = 274 -SOL_CAIF = 278 -SOL_DCCP = 269 -SOL_DECNET = 261 -SOL_ICMPV6 = 58 -SOL_IP = 0 -SOL_IPV6 = 41 -SOL_IPX = 256 -SOL_IRDA = 266 -SOL_IUCV = 277 -SOL_KCM = 281 -SOL_L2CAP = 6 -SOL_LLC = 268 -SOL_NETBEUI = 267 -SOL_NETLINK = 270 -SOL_NETROM = 259 -SOL_NFC = 280 -SOL_PACKET = 263 -SOL_PNPIPE = 275 -SOL_PPPOL2TP = 273 -SOL_RAW = 255 -SOL_RDS = 276 -SOL_RFCOMM = 18 -SOL_ROSE = 260 -SOL_RXRPC = 272 -SOL_SCO = 17 -SOL_SCTP = 132 SOL_SOCKET = 1 -SOL_TCP = 6 -SOL_TIPC = 271 -SOL_UDP = 17 -SOL_UDPLITE = 136 SO_ACCEPTCONN = 30 SO_ATTACH_BPF = 50 SO_ATTACH_FILTER = 26 @@ -327,21 +95,6 @@ SO_TIMESTAMPING = 37 SO_TIMESTAMPNS = 35 SO_TYPE = 3 SO_WIFI_STATUS = 41 -TCP_CORK = 3 -TCP_DEFER_ACCEPT = 9 -TCP_INFO = 11 -TCP_KEEPCNT = 6 -TCP_KEEPIDLE = 4 -TCP_KEEPINTVL = 5 -TCP_LINGER2 = 8 -TCP_MAXSEG = 2 -TCP_NODELAY = 1 -TCP_QUICKACK = 12 -TCP_SYNCNT = 7 -TCP_WINDOW_CLAMP = 10 -TIOCINQ = 21531 -TIOCOUTQ = 21521 -UDP_CORK = 1 __NR_accept = 43 __NR_accept4 = 288 __NR_bind = 49 diff --git a/sys/socket_arm64.const b/sys/socket_arm64.const index 2df95853f..35944d14d 100644 --- a/sys/socket_arm64.const +++ b/sys/socket_arm64.const @@ -1,188 +1,14 @@ # AUTOGENERATED FILE -AF_ALG = 38 AF_APPLETALK = 5 AF_ATMPVC = 8 AF_AX25 = 3 -AF_BLUETOOTH = 31 AF_INET = 2 AF_INET6 = 10 AF_IPX = 4 AF_NETLINK = 16 -AF_NFC = 39 AF_PACKET = 17 AF_UNIX = 1 -AF_UNSPEC = 0 AF_X25 = 9 -ALG_SET_AEAD_ASSOCLEN = 4 -ALG_SET_AEAD_AUTHSIZE = 5 -ALG_SET_IV = 2 -ALG_SET_KEY = 1 -ALG_SET_OP = 3 -BNEPCONNADD = 1074021064 -BNEPCONNDEL = 1074021065 -BNEPGETCONNINFO = 2147762899 -BNEPGETCONNLIST = 2147762898 -BNEPGETSUPPFEAT = 2147762900 -BTPROTO_BNEP = 4 -BTPROTO_CMTP = 5 -BTPROTO_HCI = 1 -BTPROTO_HIDP = 6 -BTPROTO_L2CAP = 0 -BTPROTO_RFCOMM = 3 -BTPROTO_SCO = 2 -BT_CHANNEL_POLICY = 10 -BT_DEFER_SETUP = 7 -BT_FLUSHABLE = 8 -BT_POWER = 9 -BT_RCVMTU = 13 -BT_SECURITY = 4 -BT_SNDMTU = 12 -BT_VOICE = 11 -CMTPCONNADD = 1074021320 -CMTPCONNDEL = 1074021321 -CMTPGETCONNINFO = 2147763155 -CMTPGETCONNLIST = 2147763154 -CRYPTO_ALG_ASYNC = 128 -CRYPTO_ALG_DEAD = 32 -CRYPTO_ALG_DYING = 64 -CRYPTO_ALG_GENIV = 512 -CRYPTO_ALG_INSTANCE = 2048 -CRYPTO_ALG_INTERNAL = 8192 -CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 -CRYPTO_ALG_LARVAL = 16 -CRYPTO_ALG_NEED_FALLBACK = 256 -CRYPTO_ALG_TESTED = 1024 -CRYPTO_ALG_TYPE_ABLKCIPHER = 5 -CRYPTO_ALG_TYPE_AEAD = 3 -CRYPTO_ALG_TYPE_AHASH = 15 -CRYPTO_ALG_TYPE_AKCIPHER = 13 -CRYPTO_ALG_TYPE_BLKCIPHER = 4 -CRYPTO_ALG_TYPE_CIPHER = 1 -CRYPTO_ALG_TYPE_COMPRESS = 2 -CRYPTO_ALG_TYPE_DIGEST = 14 -CRYPTO_ALG_TYPE_GIVCIPHER = 6 -CRYPTO_ALG_TYPE_HASH = 14 -CRYPTO_ALG_TYPE_MASK = 15 -CRYPTO_ALG_TYPE_PCOMPRESS = 15 -CRYPTO_ALG_TYPE_RNG = 12 -CRYPTO_ALG_TYPE_SHASH = 14 -HCIBLOCKADDR = 1074022630 -HCIDEVDOWN = 1074022602 -HCIDEVRESET = 1074022603 -HCIDEVRESTAT = 1074022604 -HCIDEVUP = 1074022601 -HCIGETAUTHINFO = 2147764439 -HCIGETCONNINFO = 2147764437 -HCIGETCONNLIST = 2147764436 -HCIGETDEVINFO = 2147764435 -HCIGETDEVLIST = 2147764434 -HCIINQUIRY = 2147764464 -HCISETACLMTU = 1074022627 -HCISETAUTH = 1074022622 -HCISETENCRYPT = 1074022623 -HCISETLINKMODE = 1074022626 -HCISETLINKPOL = 1074022625 -HCISETPTYPE = 1074022624 -HCISETRAW = 1074022620 -HCISETSCAN = 1074022621 -HCISETSCOMTU = 1074022628 -HCIUNBLOCKADDR = 1074022631 -HCI_CHANNEL_CONTROL = 3 -HCI_CHANNEL_MONITOR = 2 -HCI_CHANNEL_RAW = 0 -HCI_CHANNEL_USER = 1 -HCI_DATA_DIR = 1 -HCI_FILTER = 2 -HCI_TIME_STAMP = 3 -HIDPCONNADD = 1074022600 -HIDPCONNDEL = 1074022601 -HIDPGETCONNINFO = 2147764435 -HIDPGETCONNLIST = 2147764434 -IPPROTO_ICMP = 1 -IPPROTO_IP = 0 -IPPROTO_IPV6 = 41 -IPPROTO_TCP = 6 -IPPROTO_UDP = 17 -IPV6_2292DSTOPTS = 4 -IPV6_2292HOPLIMIT = 8 -IPV6_2292HOPOPTS = 3 -IPV6_2292PKTINFO = 2 -IPV6_2292PKTOPTIONS = 6 -IPV6_2292RTHDR = 5 -IPV6_ADDRFORM = 1 -IPV6_ADD_MEMBERSHIP = 20 -IPV6_AUTHHDR = 10 -IPV6_CHECKSUM = 7 -IPV6_DROP_MEMBERSHIP = 21 -IPV6_DSTOPTS = 59 -IPV6_FLOWINFO = 11 -IPV6_HOPLIMIT = 52 -IPV6_HOPOPTS = 54 -IPV6_JOIN_ANYCAST = 27 -IPV6_LEAVE_ANYCAST = 28 -IPV6_MTU = 24 -IPV6_MTU_DISCOVER = 23 -IPV6_MULTICAST_HOPS = 18 -IPV6_MULTICAST_IF = 17 -IPV6_MULTICAST_LOOP = 19 -IPV6_RECVERR = 25 -IPV6_RECVPKTINFO = 49 -IPV6_ROUTER_ALERT = 22 -IPV6_RTHDR = 57 -IPV6_UNICAST_HOPS = 16 -IPV6_V6ONLY = 26 -IP_ADD_MEMBERSHIP = 35 -IP_ADD_SOURCE_MEMBERSHIP = 39 -IP_BIND_ADDRESS_NO_PORT = 24 -IP_BLOCK_SOURCE = 38 -IP_CHECKSUM = 23 -IP_DROP_MEMBERSHIP = 36 -IP_DROP_SOURCE_MEMBERSHIP = 40 -IP_FREEBIND = 15 -IP_HDRINCL = 3 -IP_IPSEC_POLICY = 16 -IP_MINTTL = 21 -IP_MSFILTER = 41 -IP_MTU = 14 -IP_MTU_DISCOVER = 10 -IP_MULTICAST_ALL = 49 -IP_MULTICAST_IF = 32 -IP_MULTICAST_LOOP = 34 -IP_MULTICAST_TTL = 33 -IP_NODEFRAG = 22 -IP_OPTIONS = 4 -IP_PASSSEC = 18 -IP_PKTINFO = 8 -IP_PKTOPTIONS = 9 -IP_PMTUDISC_DO = 2 -IP_PMTUDISC_DONT = 0 -IP_PMTUDISC_INTERFACE = 4 -IP_PMTUDISC_OMIT = 5 -IP_PMTUDISC_PROBE = 3 -IP_PMTUDISC_WANT = 1 -IP_RECVERR = 11 -IP_RECVOPTS = 6 -IP_RECVORIGDSTADDR = 20 -IP_RECVTOS = 13 -IP_RECVTTL = 12 -IP_RETOPTS = 7 -IP_ROUTER_ALERT = 5 -IP_TOS = 1 -IP_TRANSPARENT = 19 -IP_TTL = 2 -IP_UNBLOCK_SOURCE = 37 -L2CAP_CONNINFO = 2 -L2CAP_LM = 3 -L2CAP_LM_AUTH = 2 -L2CAP_LM_ENCRYPT = 4 -L2CAP_LM_FIPS = 64 -L2CAP_LM_MASTER = 1 -L2CAP_LM_RELIABLE = 16 -L2CAP_LM_SECURE = 32 -L2CAP_LM_TRUSTED = 8 -L2CAP_OPTIONS = 1 -MCAST_EXCLUDE = 0 -MCAST_INCLUDE = 1 MSG_BATCH = 262144 MSG_CMSG_CLOEXEC = 1073741824 MSG_CONFIRM = 2048 @@ -199,30 +25,8 @@ MSG_PROBE = 16 MSG_TRUNC = 32 MSG_WAITALL = 256 MSG_WAITFORONE = 65536 -NFC_LLCP_MIUX = 1 -NFC_LLCP_REMOTE_LTO = 3 -NFC_LLCP_REMOTE_MIU = 2 -NFC_LLCP_REMOTE_RW = 4 -NFC_LLCP_RW = 0 -NFC_PROTO_FELICA = 3 -NFC_PROTO_ISO14443 = 4 -NFC_PROTO_ISO14443_B = 6 -NFC_PROTO_ISO15693 = 7 -NFC_PROTO_JEWEL = 1 -NFC_PROTO_MIFARE = 2 -NFC_PROTO_NFC_DEP = 5 -NFC_SOCKPROTO_LLCP = 1 -NFC_SOCKPROTO_RAW = 0 -RFCOMM_CONNINFO = 2 -RFCOMM_LM = 3 -SCM_CREDENTIALS = 2 -SCM_RIGHTS = 1 -SCO_CONNINFO = 2 -SCO_OPTIONS = 1 SHUT_RD = 0 SHUT_WR = 1 -SIOCGSTAMP = 35078 -SIOCGSTAMPNS = 35079 SIOCINQ = 21531 SIOCOUTQ = 21521 SOCK_CLOEXEC = 524288 @@ -245,43 +49,7 @@ SOF_TIMESTAMPING_TX_ACK = 512 SOF_TIMESTAMPING_TX_HARDWARE = 1 SOF_TIMESTAMPING_TX_SCHED = 256 SOF_TIMESTAMPING_TX_SOFTWARE = 2 -SOL_AAL = 265 -SOL_ALG = 279 -SOL_ATALK = 258 -SOL_ATM = 264 -SOL_AX25 = 257 -SOL_BLUETOOTH = 274 -SOL_CAIF = 278 -SOL_DCCP = 269 -SOL_DECNET = 261 -SOL_ICMPV6 = 58 -SOL_IP = 0 -SOL_IPV6 = 41 -SOL_IPX = 256 -SOL_IRDA = 266 -SOL_IUCV = 277 -SOL_KCM = 281 -SOL_L2CAP = 6 -SOL_LLC = 268 -SOL_NETBEUI = 267 -SOL_NETLINK = 270 -SOL_NETROM = 259 -SOL_NFC = 280 -SOL_PACKET = 263 -SOL_PNPIPE = 275 -SOL_PPPOL2TP = 273 -SOL_RAW = 255 -SOL_RDS = 276 -SOL_RFCOMM = 18 -SOL_ROSE = 260 -SOL_RXRPC = 272 -SOL_SCO = 17 -SOL_SCTP = 132 SOL_SOCKET = 1 -SOL_TCP = 6 -SOL_TIPC = 271 -SOL_UDP = 17 -SOL_UDPLITE = 136 SO_ACCEPTCONN = 30 SO_ATTACH_BPF = 50 SO_ATTACH_FILTER = 26 @@ -327,21 +95,6 @@ SO_TIMESTAMPING = 37 SO_TIMESTAMPNS = 35 SO_TYPE = 3 SO_WIFI_STATUS = 41 -TCP_CORK = 3 -TCP_DEFER_ACCEPT = 9 -TCP_INFO = 11 -TCP_KEEPCNT = 6 -TCP_KEEPIDLE = 4 -TCP_KEEPINTVL = 5 -TCP_LINGER2 = 8 -TCP_MAXSEG = 2 -TCP_NODELAY = 1 -TCP_QUICKACK = 12 -TCP_SYNCNT = 7 -TCP_WINDOW_CLAMP = 10 -TIOCINQ = 21531 -TIOCOUTQ = 21521 -UDP_CORK = 1 __NR_accept = 202 __NR_accept4 = 242 __NR_bind = 200 diff --git a/sys/socket_bluetooth.txt b/sys/socket_bluetooth.txt new file mode 100644 index 000000000..4dbb1cbe5 --- /dev/null +++ b/sys/socket_bluetooth.txt @@ -0,0 +1,264 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_BLUETOOTH support. + +include <linux/socket.h> +include <linux/net.h> +include <linux/isdn/capilli.h> +include <net/bluetooth/bluetooth.h> +include <net/bluetooth/hci_sock.h> +include <net/bluetooth/l2cap.h> +include <net/bluetooth/cmtp/cmtp.h> +include <net/bluetooth/bnep/bnep.h> +include <net/bluetooth/hidp/hidp.h> +include <net/bluetooth/sco.h> +include <net/bluetooth/rfcomm.h> +include <asm/ioctls.h> + +resource sock_bt[sock] +resource sock_bt_hci[sock_bt] + +socket$bt_hci(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_HCI]) sock_bt_hci +bind$bt_hci(fd sock_bt_hci, addr ptr[in, sockaddr_hci], addrlen len[addr]) +ioctl$bt_hci(fd sock_bt_hci, cmd flags[bt_hci_ioctl], arg buffer[inout]) +setsockopt$HCI_DATA_DIR(fd sock_bt_hci, level const[0], opt const[HCI_DATA_DIR], arg ptr[in, int32], arglen len[arg]) +setsockopt$HCI_TIME_STAMP(fd sock_bt_hci, level const[0], opt const[HCI_TIME_STAMP], arg ptr[in, int32], arglen len[arg]) +setsockopt$HCI_FILTER(fd sock_bt_hci, level const[0], opt const[HCI_FILTER], arg ptr[in, hci_ufilter], arglen len[arg]) +getsockopt$bt_hci(fd sock, level const[0], opt flags[bt_hci_sockopt], arg buffer[out], arglen ptr[inout, len[arg, int32]]) + +resource sock_bt_sco[sock_bt] + +socket$bt_sco(fam const[AF_BLUETOOTH], type const[SOCK_SEQPACKET], proto const[BTPROTO_SCO]) sock_bt_sco +bind$bt_sco(fd sock_bt_sco, addr ptr[in, sockaddr_sco], addrlen len[addr]) +connect$bt_sco(fd sock_bt_sco, addr ptr[in, sockaddr_sco], addrlen len[addr]) +getsockopt$SCO_OPTIONS(fd sock_bt_sco, level const[SOL_SCO], opt const[SCO_OPTIONS], arg buffer[out], arglen ptr[inout, len[arg, int32]]) +getsockopt$SCO_CONNINFO(fd sock_bt_sco, level const[SOL_SCO], opt const[SCO_CONNINFO], arg buffer[out], arglen ptr[inout, len[arg, int32]]) + +resource sock_bt_l2cap[sock_bt] + +socket$bt_l2cap(fam const[AF_BLUETOOTH], type flags[bt_l2cap_type], proto const[BTPROTO_L2CAP]) sock_bt_l2cap +bind$bt_l2cap(fd sock_bt_l2cap, addr ptr[in, sockaddr_l2], addrlen len[addr]) +connect$bt_l2cap(fd sock_bt_l2cap, addr ptr[in, sockaddr_l2], addrlen len[addr]) +setsockopt$L2CAP_OPTIONS(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_OPTIONS], arg ptr[in, l2cap_options], arglen len[arg]) +getsockopt$L2CAP_OPTIONS(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_OPTIONS], arg ptr[out, l2cap_options], arglen ptr[inout, len[arg, int32]]) +setsockopt$L2CAP_LM(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_LM], arg ptr[in, flags[bt_l2cap_lm, int32]], arglen len[arg]) +getsockopt$L2CAP_LM(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_LM], arg ptr[out, int32], arglen ptr[inout, len[arg, int32]]) +setsockopt$L2CAP_CONNINFO(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_CONNINFO], arg ptr[in, l2cap_conninfo], arglen len[arg]) +getsockopt$L2CAP_CONNINFO(fd sock_bt_l2cap, level const[SOL_L2CAP], opt const[L2CAP_CONNINFO], arg ptr[out, l2cap_conninfo], arglen ptr[inout, len[arg, int32]]) + +resource sock_bt_rfcomm[sock_bt] + +socket$bt_rfcomm(fam const[AF_BLUETOOTH], type flags[bt_rfcomm_type], proto const[BTPROTO_RFCOMM]) sock_bt_rfcomm +bind$bt_rfcomm(fd sock_bt_rfcomm, addr ptr[in, sockaddr_rc], addrlen len[addr]) +connect$bt_rfcomm(fd sock_bt_rfcomm, addr ptr[in, sockaddr_rc], addrlen len[addr]) +setsockopt$RFCOMM_LM(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_LM], arg ptr[in, flags[bt_l2cap_lm, int32]], arglen len[arg]) +getsockopt$RFCOMM_LM(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_LM], arg ptr[out, int32], arglen ptr[inout, len[arg, int32]]) +getsockopt$RFCOMM_CONNINFO(fd sock_bt_rfcomm, level const[SOL_RFCOMM], opt const[RFCOMM_CONNINFO], arg buffer[out], arglen ptr[inout, len[arg, int32]]) + +resource sock_bt_hidp[sock_bt] + +socket$bt_hidp(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_HIDP]) sock_bt_hidp +ioctl$HIDPCONNADD(fd sock_bt_hidp, cmd const[HIDPCONNADD], arg ptr[in, hidp_connadd_req]) +ioctl$HIDPCONNDEL(fd sock_bt_hidp, cmd const[HIDPCONNDEL], arg ptr[in, hidp_conndel_req]) +ioctl$HIDPGETCONNLIST(fd sock_bt_hidp, cmd const[HIDPGETCONNLIST], arg ptr[in, hidp_connlist_req]) +ioctl$HIDPGETCONNINFO(fd sock_bt_hidp, cmd const[HIDPGETCONNINFO], arg ptr[in, hidp_conninfo]) + +resource sock_bt_cmtp[sock_bt] + +socket$bt_cmtp(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_CMTP]) sock_bt_cmtp +ioctl$CMTPCONNADD(fd sock_bt_cmtp, cmd const[CMTPCONNADD], arg ptr[in, cmtp_connadd_req]) +ioctl$CMTPCONNDEL(fd sock_bt_cmtp, cmd const[CMTPCONNDEL], arg ptr[in, cmtp_conndel_req]) +ioctl$CMTPGETCONNLIST(fd sock_bt_cmtp, cmd const[CMTPGETCONNLIST], arg ptr[in, cmtp_connlist_req]) +ioctl$CMTPGETCONNINFO(fd sock_bt_cmtp, cmd const[CMTPGETCONNINFO], arg ptr[in, cmtp_conninfo]) + +resource sock_bt_bnep[sock_bt] + +socket$bt_bnep(fam const[AF_BLUETOOTH], type const[SOCK_RAW], proto const[BTPROTO_BNEP]) sock_bt_bnep +ioctl$BNEPCONNADD(fd sock_bt_bnep, cmd const[BNEPCONNADD], arg ptr[in, bnep_connadd_req]) +ioctl$BNEPCONNDEL(fd sock_bt_bnep, cmd const[BNEPCONNDEL], arg ptr[in, bnep_conndel_req]) +ioctl$BNEPGETCONNLIST(fd sock_bt_bnep, cmd const[BNEPGETCONNLIST], arg ptr[in, bnep_connlist_req]) +ioctl$BNEPGETCONNINFO(fd sock_bt_bnep, cmd const[BNEPGETCONNINFO], arg ptr[in, bnep_conninfo]) +ioctl$BNEPGETSUPPFEAT(fd sock_bt_bnep, cmd const[BNEPGETSUPPFEAT], arg ptr[in, int32]) + +ioctl$bt(fd sock_bt, cmd flags[bt_ioctl], arg buffer[inout]) +setsockopt$BT_SECURITY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SECURITY], arg ptr[in, bt_security], arglen len[arg]) +getsockopt$BT_SECURITY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SECURITY], arg ptr[out, bt_security], arglen len[arg]) +setsockopt$BT_DEFER_SETUP(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_DEFER_SETUP], arg ptr[in, int32], arglen len[arg]) +getsockopt$BT_DEFER_SETUP(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_DEFER_SETUP], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_VOICE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_VOICE], arg ptr[in, int16], arglen len[arg]) +getsockopt$BT_VOICE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_VOICE], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_FLUSHABLE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_FLUSHABLE], arg ptr[in, int32], arglen len[arg]) +getsockopt$BT_FLUSHABLE(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_FLUSHABLE], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_POWER(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_POWER], arg ptr[in, int8], arglen len[arg]) +getsockopt$BT_POWER(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_POWER], arg ptr[in, int8], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_CHANNEL_POLICY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_CHANNEL_POLICY], arg ptr[in, int32], arglen len[arg]) +getsockopt$BT_CHANNEL_POLICY(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_CHANNEL_POLICY], arg ptr[in, int32], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_SNDMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SNDMTU], arg ptr[in, int16], arglen len[arg]) +getsockopt$BT_SNDMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_SNDMTU], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) +setsockopt$BT_RCVMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_RCVMTU], arg ptr[in, int16], arglen len[arg]) +getsockopt$BT_RCVMTU(fd sock_bt, level const[SOL_BLUETOOTH], opt const[BT_RCVMTU], arg ptr[in, int16], arglen ptr[in, len[arg, intptr]]) + +sockaddr_hci { + fam const[AF_BLUETOOTH, int16] + dev int16 + chan flags[bt_chi_chan, int16] +} + +hci_inquiry_req { + dev int16 + flags int16 + lap0 int8 + lap1 int8 + lap2 int8 + len int8 + rsp int8 +} + +hci_ufilter { + type int32 + event0 int32 + event1 int32 + opcode int16 +} + +sockaddr_sco { + fam const[AF_BLUETOOTH, int16] + addr bdaddr +} + +sockaddr_l2 { + fam const[AF_BLUETOOTH, int16] + psm int16 + addr bdaddr + cid int16 + typ int8 +} + +bdaddr { + addr0 int8 + addr1 int8 + addr2 int8 + addr3 int8 + addr4 int8 + addr5 int8 +} + +bt_security { + lev int8 + keysize int8 +} + +l2cap_options { + omtu int16 + imtu int16 + flushto int16 + mode int8 + fcs int8 + maxtx int8 + txwin int16 +} + +l2cap_conninfo { + handle int16 + devcls0 int8 + devcls1 int8 + devcls2 int8 +} + +sockaddr_rc { + fam const[AF_BLUETOOTH, int16] + addr bdaddr + chan int8 +} + +hidp_connadd_req { + ctrlsk sock + intrsk sock + parser int16 + rdsize int16 + rddata buffer[in] + country int8 + subclas int8 + vendor int16 + product int16 + version int16 + flags int32 + idleto int32 + name array[int8] +} + +hidp_conndel_req { + addr bdaddr + flags int32 +} + +hidp_conninfo { + addr bdaddr + flags int32 + state int16 + vendor int16 + product int16 + ver int16 + name array[int8] +} + +hidp_connlist_req { + cnum len[ci, int32] + ci ptr[out, array[hidp_conninfo]] +} + +cmtp_connadd_req { + sock sock + flags int32 +} + +cmtp_conndel_req { + addr bdaddr + flags int32 +} + +cmtp_conninfo { + addr bdaddr + flags int32 + state int16 + num int32 +} + +cmtp_connlist_req { + cnum len[ci, int32] + ci ptr[out, array[cmtp_conninfo]] +} + +bnep_connadd_req { + sock sock + flags int32 + role int16 + device array[int8] +} + +bnep_conndel_req { + flags int32 + dst array[int8, 6] +} + +bnep_conninfo { + flags int32 + role int16 + state int16 + dst array[int8, 6] + device array[int8, 16] +} + +bnep_connlist_req { + cnum len[ci, int32] + ci ptr[out, array[bnep_conninfo]] +} + +bt_chi_chan = HCI_CHANNEL_RAW, HCI_CHANNEL_USER, HCI_CHANNEL_MONITOR, HCI_CHANNEL_CONTROL +bt_hci_ioctl = HCIDEVUP, HCIDEVDOWN, HCIDEVRESET, HCIDEVRESTAT, HCIGETDEVLIST, HCIGETDEVINFO, HCIGETCONNLIST, HCIGETCONNINFO, HCIGETAUTHINFO, HCISETRAW, HCISETSCAN, HCISETAUTH, HCISETENCRYPT, HCISETPTYPE, HCISETLINKPOL, HCISETLINKMODE, HCISETACLMTU, HCISETSCOMTU, HCIBLOCKADDR, HCIUNBLOCKADDR, HCIINQUIRY +bt_hci_sockopt = HCI_DATA_DIR, HCI_TIME_STAMP, HCI_FILTER +bt_ioctl = TIOCOUTQ, TIOCINQ, SIOCGSTAMP, SIOCGSTAMPNS +bt_l2cap_type = SOCK_SEQPACKET, SOCK_STREAM, SOCK_DGRAM, SOCK_RAW +bt_l2cap_lm = L2CAP_LM_MASTER, L2CAP_LM_AUTH, L2CAP_LM_ENCRYPT, L2CAP_LM_TRUSTED, L2CAP_LM_RELIABLE, L2CAP_LM_SECURE, L2CAP_LM_FIPS +bt_rfcomm_type = SOCK_STREAM, SOCK_RAW diff --git a/sys/socket_bluetooth_amd64.const b/sys/socket_bluetooth_amd64.const new file mode 100644 index 000000000..8cb231d8e --- /dev/null +++ b/sys/socket_bluetooth_amd64.const @@ -0,0 +1,90 @@ +# AUTOGENERATED FILE +AF_BLUETOOTH = 31 +BNEPCONNADD = 1074021064 +BNEPCONNDEL = 1074021065 +BNEPGETCONNINFO = 2147762899 +BNEPGETCONNLIST = 2147762898 +BNEPGETSUPPFEAT = 2147762900 +BTPROTO_BNEP = 4 +BTPROTO_CMTP = 5 +BTPROTO_HCI = 1 +BTPROTO_HIDP = 6 +BTPROTO_L2CAP = 0 +BTPROTO_RFCOMM = 3 +BTPROTO_SCO = 2 +BT_CHANNEL_POLICY = 10 +BT_DEFER_SETUP = 7 +BT_FLUSHABLE = 8 +BT_POWER = 9 +BT_RCVMTU = 13 +BT_SECURITY = 4 +BT_SNDMTU = 12 +BT_VOICE = 11 +CMTPCONNADD = 1074021320 +CMTPCONNDEL = 1074021321 +CMTPGETCONNINFO = 2147763155 +CMTPGETCONNLIST = 2147763154 +HCIBLOCKADDR = 1074022630 +HCIDEVDOWN = 1074022602 +HCIDEVRESET = 1074022603 +HCIDEVRESTAT = 1074022604 +HCIDEVUP = 1074022601 +HCIGETAUTHINFO = 2147764439 +HCIGETCONNINFO = 2147764437 +HCIGETCONNLIST = 2147764436 +HCIGETDEVINFO = 2147764435 +HCIGETDEVLIST = 2147764434 +HCIINQUIRY = 2147764464 +HCISETACLMTU = 1074022627 +HCISETAUTH = 1074022622 +HCISETENCRYPT = 1074022623 +HCISETLINKMODE = 1074022626 +HCISETLINKPOL = 1074022625 +HCISETPTYPE = 1074022624 +HCISETRAW = 1074022620 +HCISETSCAN = 1074022621 +HCISETSCOMTU = 1074022628 +HCIUNBLOCKADDR = 1074022631 +HCI_CHANNEL_CONTROL = 3 +HCI_CHANNEL_MONITOR = 2 +HCI_CHANNEL_RAW = 0 +HCI_CHANNEL_USER = 1 +HCI_DATA_DIR = 1 +HCI_FILTER = 2 +HCI_TIME_STAMP = 3 +HIDPCONNADD = 1074022600 +HIDPCONNDEL = 1074022601 +HIDPGETCONNINFO = 2147764435 +HIDPGETCONNLIST = 2147764434 +L2CAP_CONNINFO = 2 +L2CAP_LM = 3 +L2CAP_LM_AUTH = 2 +L2CAP_LM_ENCRYPT = 4 +L2CAP_LM_FIPS = 64 +L2CAP_LM_MASTER = 1 +L2CAP_LM_RELIABLE = 16 +L2CAP_LM_SECURE = 32 +L2CAP_LM_TRUSTED = 8 +L2CAP_OPTIONS = 1 +RFCOMM_CONNINFO = 2 +RFCOMM_LM = 3 +SCO_CONNINFO = 2 +SCO_OPTIONS = 1 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_BLUETOOTH = 274 +SOL_L2CAP = 6 +SOL_RFCOMM = 18 +SOL_SCO = 17 +TIOCINQ = 21531 +TIOCOUTQ = 21521 +__NR_bind = 49 +__NR_connect = 42 +__NR_getsockopt = 55 +__NR_ioctl = 16 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_bluetooth_arm64.const b/sys/socket_bluetooth_arm64.const new file mode 100644 index 000000000..26782a9e3 --- /dev/null +++ b/sys/socket_bluetooth_arm64.const @@ -0,0 +1,90 @@ +# AUTOGENERATED FILE +AF_BLUETOOTH = 31 +BNEPCONNADD = 1074021064 +BNEPCONNDEL = 1074021065 +BNEPGETCONNINFO = 2147762899 +BNEPGETCONNLIST = 2147762898 +BNEPGETSUPPFEAT = 2147762900 +BTPROTO_BNEP = 4 +BTPROTO_CMTP = 5 +BTPROTO_HCI = 1 +BTPROTO_HIDP = 6 +BTPROTO_L2CAP = 0 +BTPROTO_RFCOMM = 3 +BTPROTO_SCO = 2 +BT_CHANNEL_POLICY = 10 +BT_DEFER_SETUP = 7 +BT_FLUSHABLE = 8 +BT_POWER = 9 +BT_RCVMTU = 13 +BT_SECURITY = 4 +BT_SNDMTU = 12 +BT_VOICE = 11 +CMTPCONNADD = 1074021320 +CMTPCONNDEL = 1074021321 +CMTPGETCONNINFO = 2147763155 +CMTPGETCONNLIST = 2147763154 +HCIBLOCKADDR = 1074022630 +HCIDEVDOWN = 1074022602 +HCIDEVRESET = 1074022603 +HCIDEVRESTAT = 1074022604 +HCIDEVUP = 1074022601 +HCIGETAUTHINFO = 2147764439 +HCIGETCONNINFO = 2147764437 +HCIGETCONNLIST = 2147764436 +HCIGETDEVINFO = 2147764435 +HCIGETDEVLIST = 2147764434 +HCIINQUIRY = 2147764464 +HCISETACLMTU = 1074022627 +HCISETAUTH = 1074022622 +HCISETENCRYPT = 1074022623 +HCISETLINKMODE = 1074022626 +HCISETLINKPOL = 1074022625 +HCISETPTYPE = 1074022624 +HCISETRAW = 1074022620 +HCISETSCAN = 1074022621 +HCISETSCOMTU = 1074022628 +HCIUNBLOCKADDR = 1074022631 +HCI_CHANNEL_CONTROL = 3 +HCI_CHANNEL_MONITOR = 2 +HCI_CHANNEL_RAW = 0 +HCI_CHANNEL_USER = 1 +HCI_DATA_DIR = 1 +HCI_FILTER = 2 +HCI_TIME_STAMP = 3 +HIDPCONNADD = 1074022600 +HIDPCONNDEL = 1074022601 +HIDPGETCONNINFO = 2147764435 +HIDPGETCONNLIST = 2147764434 +L2CAP_CONNINFO = 2 +L2CAP_LM = 3 +L2CAP_LM_AUTH = 2 +L2CAP_LM_ENCRYPT = 4 +L2CAP_LM_FIPS = 64 +L2CAP_LM_MASTER = 1 +L2CAP_LM_RELIABLE = 16 +L2CAP_LM_SECURE = 32 +L2CAP_LM_TRUSTED = 8 +L2CAP_OPTIONS = 1 +RFCOMM_CONNINFO = 2 +RFCOMM_LM = 3 +SCO_CONNINFO = 2 +SCO_OPTIONS = 1 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_BLUETOOTH = 274 +SOL_L2CAP = 6 +SOL_RFCOMM = 18 +SOL_SCO = 17 +TIOCINQ = 21531 +TIOCOUTQ = 21521 +__NR_bind = 200 +__NR_connect = 203 +__NR_getsockopt = 209 +__NR_ioctl = 29 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_bluetooth_ppc64le.const b/sys/socket_bluetooth_ppc64le.const new file mode 100644 index 000000000..e01d7d39e --- /dev/null +++ b/sys/socket_bluetooth_ppc64le.const @@ -0,0 +1,90 @@ +# AUTOGENERATED FILE +AF_BLUETOOTH = 31 +BNEPCONNADD = 2147762888 +BNEPCONNDEL = 2147762889 +BNEPGETCONNINFO = 1074021075 +BNEPGETCONNLIST = 1074021074 +BNEPGETSUPPFEAT = 1074021076 +BTPROTO_BNEP = 4 +BTPROTO_CMTP = 5 +BTPROTO_HCI = 1 +BTPROTO_HIDP = 6 +BTPROTO_L2CAP = 0 +BTPROTO_RFCOMM = 3 +BTPROTO_SCO = 2 +BT_CHANNEL_POLICY = 10 +BT_DEFER_SETUP = 7 +BT_FLUSHABLE = 8 +BT_POWER = 9 +BT_RCVMTU = 13 +BT_SECURITY = 4 +BT_SNDMTU = 12 +BT_VOICE = 11 +CMTPCONNADD = 2147763144 +CMTPCONNDEL = 2147763145 +CMTPGETCONNINFO = 1074021331 +CMTPGETCONNLIST = 1074021330 +HCIBLOCKADDR = 2147764454 +HCIDEVDOWN = 2147764426 +HCIDEVRESET = 2147764427 +HCIDEVRESTAT = 2147764428 +HCIDEVUP = 2147764425 +HCIGETAUTHINFO = 1074022615 +HCIGETCONNINFO = 1074022613 +HCIGETCONNLIST = 1074022612 +HCIGETDEVINFO = 1074022611 +HCIGETDEVLIST = 1074022610 +HCIINQUIRY = 1074022640 +HCISETACLMTU = 2147764451 +HCISETAUTH = 2147764446 +HCISETENCRYPT = 2147764447 +HCISETLINKMODE = 2147764450 +HCISETLINKPOL = 2147764449 +HCISETPTYPE = 2147764448 +HCISETRAW = 2147764444 +HCISETSCAN = 2147764445 +HCISETSCOMTU = 2147764452 +HCIUNBLOCKADDR = 2147764455 +HCI_CHANNEL_CONTROL = 3 +HCI_CHANNEL_MONITOR = 2 +HCI_CHANNEL_RAW = 0 +HCI_CHANNEL_USER = 1 +HCI_DATA_DIR = 1 +HCI_FILTER = 2 +HCI_TIME_STAMP = 3 +HIDPCONNADD = 2147764424 +HIDPCONNDEL = 2147764425 +HIDPGETCONNINFO = 1074022611 +HIDPGETCONNLIST = 1074022610 +L2CAP_CONNINFO = 2 +L2CAP_LM = 3 +L2CAP_LM_AUTH = 2 +L2CAP_LM_ENCRYPT = 4 +L2CAP_LM_FIPS = 64 +L2CAP_LM_MASTER = 1 +L2CAP_LM_RELIABLE = 16 +L2CAP_LM_SECURE = 32 +L2CAP_LM_TRUSTED = 8 +L2CAP_OPTIONS = 1 +RFCOMM_CONNINFO = 2 +RFCOMM_LM = 3 +SCO_CONNINFO = 2 +SCO_OPTIONS = 1 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_BLUETOOTH = 274 +SOL_L2CAP = 6 +SOL_RFCOMM = 18 +SOL_SCO = 17 +TIOCINQ = 1074030207 +TIOCOUTQ = 1074033779 +__NR_bind = 327 +__NR_connect = 328 +__NR_getsockopt = 340 +__NR_ioctl = 54 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/socket_inet.txt b/sys/socket_inet.txt new file mode 100644 index 000000000..41b214ccd --- /dev/null +++ b/sys/socket_inet.txt @@ -0,0 +1,208 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +include <linux/ip.h> +include <linux/ipv6.h> + +getsockopt$ip_int(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_int(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_int], optval ptr[in, int32], optlen len[optval]) +getsockopt$ip_buf(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_buf], optval buffer[out], optlen ptr[inout, len[optval, int32]]) +getsockopt$ip_mreq(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[out, ip_mreq], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_mreq(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[in, ip_mreq], optlen len[optval]) +getsockopt$ip_mreqn(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[out, ip_mreqn], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_mreqn(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreq], optval ptr[in, ip_mreqn], optlen len[optval]) +getsockopt$ip_mreqsrc(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreqsrc], optval ptr[out, ip_mreq_source], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_mreqsrc(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_mreqsrc], optval ptr[in, ip_mreq_source], optlen len[optval]) +setsockopt$ip_msfilter(fd sock, level const[IPPROTO_IP], optname const[IP_MSFILTER], optval ptr[in, ip_msfilter], optlen len[optval]) +getsockopt$ip_mtu(fd sock, level const[IPPROTO_IP], optname const[IP_MTU_DISCOVER], optval ptr[out, flags[ip_mtu_discover, int32]], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_mtu(fd sock, level const[IPPROTO_IP], optname const[IP_MTU_DISCOVER], optval ptr[in, flags[ip_mtu_discover, int32]], optlen len[optval]) +getsockopt$ip_opts(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_opts], optval buffer[out], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_opts(fd sock, level const[IPPROTO_IP], optname flags[sockopt_opt_ip_opts], optval buffer[in], optlen len[optval]) +getsockopt$ip_pktinfo(fd sock, level const[IPPROTO_IP], optname const[IP_PKTINFO], optval ptr[out, in_pktinfo], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_pktinfo(fd sock, level const[IPPROTO_IP], optname const[IP_PKTINFO], optval ptr[in, in_pktinfo], optlen len[optval]) +getsockopt$ip_ipsec(fd sock, level const[IPPROTO_IP], optname const[IP_IPSEC_POLICY], optval ptr[out, xfrm_filer], optlen ptr[inout, len[optval, int32]]) +setsockopt$ip_ipsec(fd sock, level const[IPPROTO_IP], optname const[IP_IPSEC_POLICY], optval ptr[in, xfrm_filer], optlen len[optval]) + +getsockopt$ipv6_int(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) +setsockopt$ipv6_int(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_int], optval ptr[in, int32], optlen len[optval]) +getsockopt$ipv6_mreq(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_mreq], optval ptr[out, ipv6_mreq], optlen ptr[inout, len[optval, int32]]) +setsockopt$ipv6_mreq(fd sock, level const[IPPROTO_IPV6], optname flags[sockopt_opt_ipv6_mreq], optval ptr[in, ipv6_mreq], optlen len[optval]) +getsockopt$ipv6_mtu(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_MTU_DISCOVER], optval ptr[out, flags[ip_mtu_discover, int32]], optlen ptr[inout, len[optval, int32]]) +setsockopt$ipv6_mtu(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_MTU_DISCOVER], optval ptr[in, flags[ip_mtu_discover, int32]], optlen len[optval]) +getsockopt$ipv6_opts(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_2292PKTOPTIONS], optval buffer[out], optlen ptr[inout, len[optval, int32]]) +setsockopt$ipv6_opts(fd sock, level const[IPPROTO_IPV6], optname const[IPV6_2292PKTOPTIONS], optval buffer[in], optlen len[optval]) + +sockopt_opt_ip_int = IP_FREEBIND, IP_HDRINCL, IP_MTU, IP_MULTICAST_ALL, IP_MULTICAST_LOOP, IP_MULTICAST_TTL, IP_NODEFRAG, IP_RECVOPTS, IP_RECVORIGDSTADDR, IP_RECVTOS, IP_RECVTTL, IP_RETOPTS, IP_ROUTER_ALERT, IP_TOS, IP_TRANSPARENT, IP_TTL, IP_RECVERR, IP_PASSSEC, IP_MINTTL, IP_CHECKSUM, IP_BIND_ADDRESS_NO_PORT +sockopt_opt_ip_mreq = IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP, IP_MULTICAST_IF +sockopt_opt_ip_mreqsrc = IP_ADD_SOURCE_MEMBERSHIP, IP_BLOCK_SOURCE, IP_DROP_SOURCE_MEMBERSHIP, IP_UNBLOCK_SOURCE +sockopt_opt_ip_buf = IP_MSFILTER +sockopt_opt_ip_opts = IP_OPTIONS, IP_PKTOPTIONS +ip_msfilter_mode = MCAST_INCLUDE, MCAST_EXCLUDE +ip_mtu_discover = IP_PMTUDISC_DONT, IP_PMTUDISC_WANT, IP_PMTUDISC_DO, IP_PMTUDISC_PROBE, IP_PMTUDISC_INTERFACE, IP_PMTUDISC_OMIT +sockopt_opt_ipv6_int = IPV6_ADDRFORM, IPV6_MTU, IPV6_MULTICAST_HOPS, IPV6_MULTICAST_IF, IPV6_MULTICAST_LOOP, IPV6_RECVPKTINFO, IPV6_RECVERR, IPV6_ROUTER_ALERT, IPV6_UNICAST_HOPS, IPV6_V6ONLY, IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT, IPV6_CHECKSUM, IPV6_2292PKTINFO, IPV6_2292HOPOPTS, IPV6_2292DSTOPTS, IPV6_2292RTHDR, IPV6_2292HOPLIMIT +sockopt_opt_ipv6_mreq = IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST +sock_level = IPPROTO_ICMP, SOL_IP, SOL_TCP, SOL_UDP, SOL_IPV6, SOL_ICMPV6, SOL_SCTP, SOL_UDPLITE, SOL_RAW, SOL_IPX, SOL_AX25, SOL_ATALK, SOL_NETROM, SOL_ROSE, SOL_DECNET, SOL_PACKET, SOL_ATM, SOL_AAL, SOL_IRDA, SOL_NETBEUI, SOL_LLC, SOL_DCCP, SOL_NETLINK, SOL_TIPC, SOL_RXRPC, SOL_PPPOL2TP, SOL_BLUETOOTH, SOL_PNPIPE, SOL_RDS, SOL_IUCV, SOL_CAIF, SOL_ALG, SOL_NFC, SOL_KCM + +in_addr [ +# 0.0.0.0 + empty const[0x00000000, int32be] +# 127.0.0.1 + loopback const[0x7f000001, int32be] +# 255.255.255.255 + broadcast const[0xffffffff, int32be] +] + +in6_addr_empty { + a0 const[0, int64be] + a1 const[0, int64be] +} + +in6_addr_loopback { + a0 const[0, int64be] + a1 const[1, int64be] +} + +in6_addr [ + empty in6_addr_empty + loopback in6_addr_loopback +] + +sockaddr_in { + family const[AF_INET, int16] + port proc[int16be, 20000, 4] + addr in_addr + pad array[const[0, int8], 8] +} + +sockaddr_in6 { + family const[AF_INET6, int16] + port proc[int16be, 20000, 4] + flow int32 + addr in6_addr + scope int32 +} + +sockaddr_storage_in { + addr sockaddr_in + pad array[const[0, int64], 15] +} + +sockaddr_storage_in6 { + addr sockaddr_in6 + pad array[const[0, int64], 12] +} + +sockaddr_storage [ + in sockaddr_storage_in + in6 sockaddr_storage_in6 +] + +ip_mreq { + multi in_addr + addr in_addr +} + +ip_mreqn { + multi in_addr + addr in_addr + ifindex int32 +} + +ip_mreq_source { + multi in_addr + iface in_addr + source in_addr +} + +ip_msfilter { + multi in_addr + iface in_addr + fmode flags[ip_msfilter_mode, int32] + numsrc len[slist, int32] + slist array[in_addr] +} + +in_pktinfo { + ifindex int32 + dst in_addr + addr in_addr +} + +xfrm_filer { + info xfrm_userpolicy_info + tmpl xfrm_user_tmpl +} + +xfrm_userpolicy_info { + sel xfrm_selector + lft xfrm_lifetime_cfg + cur xfrm_lifetime_cur + prio int32 + index int32 + dir int8 + action int8 + flags int8 + share int8 +} + +xfrm_user_tmpl { + id xfrm_id + fam int16 + saddr xfrm_in_addr + reqid int32 + mode int8 + share int8 + opt int8 + aalgod int32 + ealgos int32 + calgos int32 +} + +xfrm_selector { + daddr xfrm_in_addr + saddr xfrm_in_addr + dport proc[int16be, 20000, 4] + dmask int16 + sport proc[int16be, 20000, 4] + smask int16 + fam int16 + len_d int8 + len_s int8 + proto int8 + ifindex int32 + user int32 +} + +xfrm_lifetime_cfg { + x0 int64 + x1 int64 + x2 int64 + x3 int64 + x4 int64 + x5 int64 + x6 int64 + x7 int64 +} + +xfrm_lifetime_cur { + bytes int64 + packets int64 + atime int64 + utime int64 +} + +xfrm_id { + daddr xfrm_in_addr + spi int32 + proto int8 +} + +xfrm_in_addr [ + in in_addr + in6 in6_addr +] + +ipv6_mreq { + multi in6_addr + ifindex int32 +} diff --git a/sys/socket_inet_amd64.const b/sys/socket_inet_amd64.const new file mode 100644 index 000000000..e94a6be44 --- /dev/null +++ b/sys/socket_inet_amd64.const @@ -0,0 +1,111 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_IP = 0 +IPPROTO_IPV6 = 41 +IPV6_2292DSTOPTS = 4 +IPV6_2292HOPLIMIT = 8 +IPV6_2292HOPOPTS = 3 +IPV6_2292PKTINFO = 2 +IPV6_2292PKTOPTIONS = 6 +IPV6_2292RTHDR = 5 +IPV6_ADDRFORM = 1 +IPV6_ADD_MEMBERSHIP = 20 +IPV6_AUTHHDR = 10 +IPV6_CHECKSUM = 7 +IPV6_DROP_MEMBERSHIP = 21 +IPV6_DSTOPTS = 59 +IPV6_FLOWINFO = 11 +IPV6_HOPLIMIT = 52 +IPV6_HOPOPTS = 54 +IPV6_JOIN_ANYCAST = 27 +IPV6_LEAVE_ANYCAST = 28 +IPV6_MTU = 24 +IPV6_MTU_DISCOVER = 23 +IPV6_MULTICAST_HOPS = 18 +IPV6_MULTICAST_IF = 17 +IPV6_MULTICAST_LOOP = 19 +IPV6_RECVERR = 25 +IPV6_RECVPKTINFO = 49 +IPV6_ROUTER_ALERT = 22 +IPV6_RTHDR = 57 +IPV6_UNICAST_HOPS = 16 +IPV6_V6ONLY = 26 +IP_ADD_MEMBERSHIP = 35 +IP_ADD_SOURCE_MEMBERSHIP = 39 +IP_BIND_ADDRESS_NO_PORT = 24 +IP_BLOCK_SOURCE = 38 +IP_CHECKSUM = 23 +IP_DROP_MEMBERSHIP = 36 +IP_DROP_SOURCE_MEMBERSHIP = 40 +IP_FREEBIND = 15 +IP_HDRINCL = 3 +IP_IPSEC_POLICY = 16 +IP_MINTTL = 21 +IP_MSFILTER = 41 +IP_MTU = 14 +IP_MTU_DISCOVER = 10 +IP_MULTICAST_ALL = 49 +IP_MULTICAST_IF = 32 +IP_MULTICAST_LOOP = 34 +IP_MULTICAST_TTL = 33 +IP_NODEFRAG = 22 +IP_OPTIONS = 4 +IP_PASSSEC = 18 +IP_PKTINFO = 8 +IP_PKTOPTIONS = 9 +IP_PMTUDISC_DO = 2 +IP_PMTUDISC_DONT = 0 +IP_PMTUDISC_INTERFACE = 4 +IP_PMTUDISC_OMIT = 5 +IP_PMTUDISC_PROBE = 3 +IP_PMTUDISC_WANT = 1 +IP_RECVERR = 11 +IP_RECVOPTS = 6 +IP_RECVORIGDSTADDR = 20 +IP_RECVTOS = 13 +IP_RECVTTL = 12 +IP_RETOPTS = 7 +IP_ROUTER_ALERT = 5 +IP_TOS = 1 +IP_TRANSPARENT = 19 +IP_TTL = 2 +IP_UNBLOCK_SOURCE = 37 +MCAST_EXCLUDE = 0 +MCAST_INCLUDE = 1 +SOL_AAL = 265 +SOL_ALG = 279 +SOL_ATALK = 258 +SOL_ATM = 264 +SOL_AX25 = 257 +SOL_BLUETOOTH = 274 +SOL_CAIF = 278 +SOL_DCCP = 269 +SOL_DECNET = 261 +SOL_ICMPV6 = 58 +SOL_IP = 0 +SOL_IPV6 = 41 +SOL_IPX = 256 +SOL_IRDA = 266 +SOL_IUCV = 277 +SOL_KCM = 281 +SOL_LLC = 268 +SOL_NETBEUI = 267 +SOL_NETLINK = 270 +SOL_NETROM = 259 +SOL_NFC = 280 +SOL_PACKET = 263 +SOL_PNPIPE = 275 +SOL_PPPOL2TP = 273 +SOL_RAW = 255 +SOL_RDS = 276 +SOL_ROSE = 260 +SOL_RXRPC = 272 +SOL_SCTP = 132 +SOL_TCP = 6 +SOL_TIPC = 271 +SOL_UDP = 17 +SOL_UDPLITE = 136 +__NR_getsockopt = 55 +__NR_setsockopt = 54 diff --git a/sys/socket_inet_arm64.const b/sys/socket_inet_arm64.const new file mode 100644 index 000000000..af41e04e1 --- /dev/null +++ b/sys/socket_inet_arm64.const @@ -0,0 +1,111 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_IP = 0 +IPPROTO_IPV6 = 41 +IPV6_2292DSTOPTS = 4 +IPV6_2292HOPLIMIT = 8 +IPV6_2292HOPOPTS = 3 +IPV6_2292PKTINFO = 2 +IPV6_2292PKTOPTIONS = 6 +IPV6_2292RTHDR = 5 +IPV6_ADDRFORM = 1 +IPV6_ADD_MEMBERSHIP = 20 +IPV6_AUTHHDR = 10 +IPV6_CHECKSUM = 7 +IPV6_DROP_MEMBERSHIP = 21 +IPV6_DSTOPTS = 59 +IPV6_FLOWINFO = 11 +IPV6_HOPLIMIT = 52 +IPV6_HOPOPTS = 54 +IPV6_JOIN_ANYCAST = 27 +IPV6_LEAVE_ANYCAST = 28 +IPV6_MTU = 24 +IPV6_MTU_DISCOVER = 23 +IPV6_MULTICAST_HOPS = 18 +IPV6_MULTICAST_IF = 17 +IPV6_MULTICAST_LOOP = 19 +IPV6_RECVERR = 25 +IPV6_RECVPKTINFO = 49 +IPV6_ROUTER_ALERT = 22 +IPV6_RTHDR = 57 +IPV6_UNICAST_HOPS = 16 +IPV6_V6ONLY = 26 +IP_ADD_MEMBERSHIP = 35 +IP_ADD_SOURCE_MEMBERSHIP = 39 +IP_BIND_ADDRESS_NO_PORT = 24 +IP_BLOCK_SOURCE = 38 +IP_CHECKSUM = 23 +IP_DROP_MEMBERSHIP = 36 +IP_DROP_SOURCE_MEMBERSHIP = 40 +IP_FREEBIND = 15 +IP_HDRINCL = 3 +IP_IPSEC_POLICY = 16 +IP_MINTTL = 21 +IP_MSFILTER = 41 +IP_MTU = 14 +IP_MTU_DISCOVER = 10 +IP_MULTICAST_ALL = 49 +IP_MULTICAST_IF = 32 +IP_MULTICAST_LOOP = 34 +IP_MULTICAST_TTL = 33 +IP_NODEFRAG = 22 +IP_OPTIONS = 4 +IP_PASSSEC = 18 +IP_PKTINFO = 8 +IP_PKTOPTIONS = 9 +IP_PMTUDISC_DO = 2 +IP_PMTUDISC_DONT = 0 +IP_PMTUDISC_INTERFACE = 4 +IP_PMTUDISC_OMIT = 5 +IP_PMTUDISC_PROBE = 3 +IP_PMTUDISC_WANT = 1 +IP_RECVERR = 11 +IP_RECVOPTS = 6 +IP_RECVORIGDSTADDR = 20 +IP_RECVTOS = 13 +IP_RECVTTL = 12 +IP_RETOPTS = 7 +IP_ROUTER_ALERT = 5 +IP_TOS = 1 +IP_TRANSPARENT = 19 +IP_TTL = 2 +IP_UNBLOCK_SOURCE = 37 +MCAST_EXCLUDE = 0 +MCAST_INCLUDE = 1 +SOL_AAL = 265 +SOL_ALG = 279 +SOL_ATALK = 258 +SOL_ATM = 264 +SOL_AX25 = 257 +SOL_BLUETOOTH = 274 +SOL_CAIF = 278 +SOL_DCCP = 269 +SOL_DECNET = 261 +SOL_ICMPV6 = 58 +SOL_IP = 0 +SOL_IPV6 = 41 +SOL_IPX = 256 +SOL_IRDA = 266 +SOL_IUCV = 277 +SOL_KCM = 281 +SOL_LLC = 268 +SOL_NETBEUI = 267 +SOL_NETLINK = 270 +SOL_NETROM = 259 +SOL_NFC = 280 +SOL_PACKET = 263 +SOL_PNPIPE = 275 +SOL_PPPOL2TP = 273 +SOL_RAW = 255 +SOL_RDS = 276 +SOL_ROSE = 260 +SOL_RXRPC = 272 +SOL_SCTP = 132 +SOL_TCP = 6 +SOL_TIPC = 271 +SOL_UDP = 17 +SOL_UDPLITE = 136 +__NR_getsockopt = 209 +__NR_setsockopt = 208 diff --git a/sys/socket_inet_icmp.txt b/sys/socket_inet_icmp.txt new file mode 100644 index 000000000..0dd4036cf --- /dev/null +++ b/sys/socket_inet_icmp.txt @@ -0,0 +1,47 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_INET and AF_INET6: ICMP support + +include <linux/icmp.h> +include <linux/icmpv6.h> + +resource sock_icmp[sock] + +socket$icmp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[IPPROTO_ICMP]) sock_icmp +socket$icmp_raw(domain const[AF_INET], type const[SOCK_RAW], proto const[IPPROTO_ICMP]) sock_icmp +socketpair$icmp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[IPPROTO_ICMP], fds ptr[out, icmp_pair]) +socketpair$icmp_raw(domain const[AF_INET], type const[SOCK_RAW], proto const[IPPROTO_ICMP], fds ptr[out, icmp_pair]) +accept$icmp(fd sock_icmp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_icmp +accept4$icmp(fd sock_icmp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_icmp +bind$icmp(fd sock_icmp, addr ptr[in, sockaddr_in], addrlen len[addr]) +connect$icmp(fd sock_icmp, addr ptr[in, sockaddr_in], addrlen len[addr]) +sendto$icmp(fd sock_icmp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +recvfrom$icmp(fd sock_icmp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +getsockname$icmp(fd sock_icmp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) +getpeername$icmp(fd sock_icmp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) + +icmp_pair { + f0 sock_icmp + f1 sock_icmp +} + +resource sock_icmp6[sock] + +socket$icmp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[IPPROTO_ICMPV6]) sock_icmp6 +socket$icmp6_raw(domain const[AF_INET6], type const[SOCK_RAW], proto const[IPPROTO_ICMPV6]) sock_icmp6 +socketpair$icmp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[IPPROTO_ICMPV6], fds ptr[out, icmp6_pair]) +socketpair$icmp6_raw(domain const[AF_INET6], type const[SOCK_RAW], proto const[IPPROTO_ICMPV6], fds ptr[out, icmp6_pair]) +accept$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_icmp6 +accept4$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_icmp6 +bind$icmp6(fd sock_icmp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +connect$icmp6(fd sock_icmp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +sendto$icmp6(fd sock_icmp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +recvfrom$icmp6(fd sock_icmp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +getsockname$icmp6(fd sock_icmp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) +getpeername$icmp6(fd sock_icmp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) + +icmp6_pair { + f0 sock_icmp6 + f1 sock_icmp6 +} diff --git a/sys/socket_inet_icmp_amd64.const b/sys/socket_inet_icmp_amd64.const new file mode 100644 index 000000000..d02f17183 --- /dev/null +++ b/sys/socket_inet_icmp_amd64.const @@ -0,0 +1,17 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_ICMPV6 = 58 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +__NR_accept = 43 +__NR_accept4 = 288 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_recvfrom = 45 +__NR_sendto = 44 +__NR_socket = 41 +__NR_socketpair = 53 diff --git a/sys/socket_inet_icmp_arm64.const b/sys/socket_inet_icmp_arm64.const new file mode 100644 index 000000000..487ef6903 --- /dev/null +++ b/sys/socket_inet_icmp_arm64.const @@ -0,0 +1,17 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_ICMPV6 = 58 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +__NR_accept = 202 +__NR_accept4 = 242 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_recvfrom = 207 +__NR_sendto = 206 +__NR_socket = 198 +__NR_socketpair = 199 diff --git a/sys/socket_inet_icmp_ppc64le.const b/sys/socket_inet_icmp_ppc64le.const new file mode 100644 index 000000000..3715ed6e1 --- /dev/null +++ b/sys/socket_inet_icmp_ppc64le.const @@ -0,0 +1,17 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_ICMPV6 = 58 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +__NR_accept = 330 +__NR_accept4 = 344 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_recvfrom = 337 +__NR_sendto = 335 +__NR_socket = 326 +__NR_socketpair = 333 diff --git a/sys/socket_inet_ppc64le.const b/sys/socket_inet_ppc64le.const new file mode 100644 index 000000000..5a3f556d5 --- /dev/null +++ b/sys/socket_inet_ppc64le.const @@ -0,0 +1,111 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_ICMP = 1 +IPPROTO_IP = 0 +IPPROTO_IPV6 = 41 +IPV6_2292DSTOPTS = 4 +IPV6_2292HOPLIMIT = 8 +IPV6_2292HOPOPTS = 3 +IPV6_2292PKTINFO = 2 +IPV6_2292PKTOPTIONS = 6 +IPV6_2292RTHDR = 5 +IPV6_ADDRFORM = 1 +IPV6_ADD_MEMBERSHIP = 20 +IPV6_AUTHHDR = 10 +IPV6_CHECKSUM = 7 +IPV6_DROP_MEMBERSHIP = 21 +IPV6_DSTOPTS = 59 +IPV6_FLOWINFO = 11 +IPV6_HOPLIMIT = 52 +IPV6_HOPOPTS = 54 +IPV6_JOIN_ANYCAST = 27 +IPV6_LEAVE_ANYCAST = 28 +IPV6_MTU = 24 +IPV6_MTU_DISCOVER = 23 +IPV6_MULTICAST_HOPS = 18 +IPV6_MULTICAST_IF = 17 +IPV6_MULTICAST_LOOP = 19 +IPV6_RECVERR = 25 +IPV6_RECVPKTINFO = 49 +IPV6_ROUTER_ALERT = 22 +IPV6_RTHDR = 57 +IPV6_UNICAST_HOPS = 16 +IPV6_V6ONLY = 26 +IP_ADD_MEMBERSHIP = 35 +IP_ADD_SOURCE_MEMBERSHIP = 39 +IP_BIND_ADDRESS_NO_PORT = 24 +IP_BLOCK_SOURCE = 38 +IP_CHECKSUM = 23 +IP_DROP_MEMBERSHIP = 36 +IP_DROP_SOURCE_MEMBERSHIP = 40 +IP_FREEBIND = 15 +IP_HDRINCL = 3 +IP_IPSEC_POLICY = 16 +IP_MINTTL = 21 +IP_MSFILTER = 41 +IP_MTU = 14 +IP_MTU_DISCOVER = 10 +IP_MULTICAST_ALL = 49 +IP_MULTICAST_IF = 32 +IP_MULTICAST_LOOP = 34 +IP_MULTICAST_TTL = 33 +IP_NODEFRAG = 22 +IP_OPTIONS = 4 +IP_PASSSEC = 18 +IP_PKTINFO = 8 +IP_PKTOPTIONS = 9 +IP_PMTUDISC_DO = 2 +IP_PMTUDISC_DONT = 0 +IP_PMTUDISC_INTERFACE = 4 +IP_PMTUDISC_OMIT = 5 +IP_PMTUDISC_PROBE = 3 +IP_PMTUDISC_WANT = 1 +IP_RECVERR = 11 +IP_RECVOPTS = 6 +IP_RECVORIGDSTADDR = 20 +IP_RECVTOS = 13 +IP_RECVTTL = 12 +IP_RETOPTS = 7 +IP_ROUTER_ALERT = 5 +IP_TOS = 1 +IP_TRANSPARENT = 19 +IP_TTL = 2 +IP_UNBLOCK_SOURCE = 37 +MCAST_EXCLUDE = 0 +MCAST_INCLUDE = 1 +SOL_AAL = 265 +SOL_ALG = 279 +SOL_ATALK = 258 +SOL_ATM = 264 +SOL_AX25 = 257 +SOL_BLUETOOTH = 274 +SOL_CAIF = 278 +SOL_DCCP = 269 +SOL_DECNET = 261 +SOL_ICMPV6 = 58 +SOL_IP = 0 +SOL_IPV6 = 41 +SOL_IPX = 256 +SOL_IRDA = 266 +SOL_IUCV = 277 +SOL_KCM = 281 +SOL_LLC = 268 +SOL_NETBEUI = 267 +SOL_NETLINK = 270 +SOL_NETROM = 259 +SOL_NFC = 280 +SOL_PACKET = 263 +SOL_PNPIPE = 275 +SOL_PPPOL2TP = 273 +SOL_RAW = 255 +SOL_RDS = 276 +SOL_ROSE = 260 +SOL_RXRPC = 272 +SOL_SCTP = 132 +SOL_TCP = 6 +SOL_TIPC = 271 +SOL_UDP = 17 +SOL_UDPLITE = 136 +__NR_getsockopt = 340 +__NR_setsockopt = 339 diff --git a/sys/sctp.txt b/sys/socket_inet_sctp.txt index b993c526f..e3bbdcb1a 100755 --- a/sys/sctp.txt +++ b/sys/socket_inet_sctp.txt @@ -1,6 +1,8 @@ -# Copyright 2015 syzkaller project authors. All rights reserved. +# Copyright 2017 syzkaller project authors. All rights reserved. # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. +# AF_INET and AF_INET6: SCTP support + include <linux/sctp.h> include <asm/ioctls.h> diff --git a/sys/socket_inet_sctp_amd64.const b/sys/socket_inet_sctp_amd64.const new file mode 100644 index 000000000..920c8a073 --- /dev/null +++ b/sys/socket_inet_sctp_amd64.const @@ -0,0 +1,82 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_SCTP = 132 +SCTP_ABORT = 4 +SCTP_ADAPTATION_LAYER = 7 +SCTP_ADDR_OVER = 2 +SCTP_ASSOCINFO = 1 +SCTP_AUTH_ACTIVE_KEY = 24 +SCTP_AUTH_CHUNK = 21 +SCTP_AUTH_DELETE_KEY = 25 +SCTP_AUTH_KEY = 23 +SCTP_AUTOCLOSE = 4 +SCTP_AUTO_ASCONF = 30 +SCTP_CONTEXT = 17 +SCTP_DEFAULT_SEND_PARAM = 10 +SCTP_DEFAULT_SNDINFO = 34 +SCTP_DELAYED_SACK = 16 +SCTP_DISABLE_FRAGMENTS = 8 +SCTP_EOF = 512 +SCTP_EVENTS = 11 +SCTP_FRAGMENT_INTERLEAVE = 18 +SCTP_GET_ASSOC_ID_LIST = 29 +SCTP_GET_ASSOC_NUMBER = 28 +SCTP_GET_ASSOC_STATS = 112 +SCTP_GET_LOCAL_ADDRS = 109 +SCTP_GET_PEER_ADDRS = 108 +SCTP_GET_PEER_ADDR_INFO = 15 +SCTP_HMAC_IDENT = 22 +SCTP_INIT = 0 +SCTP_INITMSG = 2 +SCTP_I_WANT_MAPPED_V4_ADDR = 12 +SCTP_LOCAL_AUTH_CHUNKS = 27 +SCTP_MAXSEG = 13 +SCTP_MAX_BURST = 20 +SCTP_NODELAY = 3 +SCTP_PARTIAL_DELIVERY_POINT = 19 +SCTP_PEER_ADDR_PARAMS = 9 +SCTP_PEER_ADDR_THLDS = 31 +SCTP_PEER_AUTH_CHUNKS = 26 +SCTP_PRIMARY_ADDR = 6 +SCTP_RECVNXTINFO = 33 +SCTP_RECVRCVINFO = 32 +SCTP_RTOINFO = 0 +SCTP_SET_PEER_PRIMARY_ADDR = 5 +SCTP_SNDINFO = 2 +SCTP_SNDRCV = 1 +SCTP_SOCKOPT_BINDX_ADD = 100 +SCTP_SOCKOPT_BINDX_REM = 101 +SCTP_SOCKOPT_CONNECTX = 110 +SCTP_SOCKOPT_CONNECTX3 = 111 +SCTP_SOCKOPT_CONNECTX_OLD = 107 +SCTP_SOCKOPT_PEELOFF = 102 +SCTP_STATUS = 14 +SCTP_UNORDERED = 1 +SIOCINQ = 21531 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SCTP = 132 +SPP_HB_DEMAND = 4 +SPP_HB_DISABLE = 2 +SPP_HB_ENABLE = 1 +SPP_HB_TIME_IS_ZERO = 128 +SPP_PMTUD_DISABLE = 16 +SPP_PMTUD_ENABLE = 8 +SPP_SACKDELAY_DISABLE = 64 +SPP_SACKDELAY_ENABLE = 32 +__NR_accept = 43 +__NR_accept4 = 288 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_getsockopt = 55 +__NR_ioctl = 16 +__NR_recvfrom = 45 +__NR_sendmmsg = 307 +__NR_sendmsg = 46 +__NR_sendto = 44 +__NR_setsockopt = 54 +__NR_socket = 41 +__NR_socketpair = 53 diff --git a/sys/socket_inet_sctp_arm64.const b/sys/socket_inet_sctp_arm64.const new file mode 100644 index 000000000..145e44476 --- /dev/null +++ b/sys/socket_inet_sctp_arm64.const @@ -0,0 +1,82 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_SCTP = 132 +SCTP_ABORT = 4 +SCTP_ADAPTATION_LAYER = 7 +SCTP_ADDR_OVER = 2 +SCTP_ASSOCINFO = 1 +SCTP_AUTH_ACTIVE_KEY = 24 +SCTP_AUTH_CHUNK = 21 +SCTP_AUTH_DELETE_KEY = 25 +SCTP_AUTH_KEY = 23 +SCTP_AUTOCLOSE = 4 +SCTP_AUTO_ASCONF = 30 +SCTP_CONTEXT = 17 +SCTP_DEFAULT_SEND_PARAM = 10 +SCTP_DEFAULT_SNDINFO = 34 +SCTP_DELAYED_SACK = 16 +SCTP_DISABLE_FRAGMENTS = 8 +SCTP_EOF = 512 +SCTP_EVENTS = 11 +SCTP_FRAGMENT_INTERLEAVE = 18 +SCTP_GET_ASSOC_ID_LIST = 29 +SCTP_GET_ASSOC_NUMBER = 28 +SCTP_GET_ASSOC_STATS = 112 +SCTP_GET_LOCAL_ADDRS = 109 +SCTP_GET_PEER_ADDRS = 108 +SCTP_GET_PEER_ADDR_INFO = 15 +SCTP_HMAC_IDENT = 22 +SCTP_INIT = 0 +SCTP_INITMSG = 2 +SCTP_I_WANT_MAPPED_V4_ADDR = 12 +SCTP_LOCAL_AUTH_CHUNKS = 27 +SCTP_MAXSEG = 13 +SCTP_MAX_BURST = 20 +SCTP_NODELAY = 3 +SCTP_PARTIAL_DELIVERY_POINT = 19 +SCTP_PEER_ADDR_PARAMS = 9 +SCTP_PEER_ADDR_THLDS = 31 +SCTP_PEER_AUTH_CHUNKS = 26 +SCTP_PRIMARY_ADDR = 6 +SCTP_RECVNXTINFO = 33 +SCTP_RECVRCVINFO = 32 +SCTP_RTOINFO = 0 +SCTP_SET_PEER_PRIMARY_ADDR = 5 +SCTP_SNDINFO = 2 +SCTP_SNDRCV = 1 +SCTP_SOCKOPT_BINDX_ADD = 100 +SCTP_SOCKOPT_BINDX_REM = 101 +SCTP_SOCKOPT_CONNECTX = 110 +SCTP_SOCKOPT_CONNECTX3 = 111 +SCTP_SOCKOPT_CONNECTX_OLD = 107 +SCTP_SOCKOPT_PEELOFF = 102 +SCTP_STATUS = 14 +SCTP_UNORDERED = 1 +SIOCINQ = 21531 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SCTP = 132 +SPP_HB_DEMAND = 4 +SPP_HB_DISABLE = 2 +SPP_HB_ENABLE = 1 +SPP_HB_TIME_IS_ZERO = 128 +SPP_PMTUD_DISABLE = 16 +SPP_PMTUD_ENABLE = 8 +SPP_SACKDELAY_DISABLE = 64 +SPP_SACKDELAY_ENABLE = 32 +__NR_accept = 202 +__NR_accept4 = 242 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_getsockopt = 209 +__NR_ioctl = 29 +__NR_recvfrom = 207 +__NR_sendmmsg = 269 +__NR_sendmsg = 211 +__NR_sendto = 206 +__NR_setsockopt = 208 +__NR_socket = 198 +__NR_socketpair = 199 diff --git a/sys/socket_inet_sctp_ppc64le.const b/sys/socket_inet_sctp_ppc64le.const new file mode 100644 index 000000000..b90794f9a --- /dev/null +++ b/sys/socket_inet_sctp_ppc64le.const @@ -0,0 +1,82 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_SCTP = 132 +SCTP_ABORT = 4 +SCTP_ADAPTATION_LAYER = 7 +SCTP_ADDR_OVER = 2 +SCTP_ASSOCINFO = 1 +SCTP_AUTH_ACTIVE_KEY = 24 +SCTP_AUTH_CHUNK = 21 +SCTP_AUTH_DELETE_KEY = 25 +SCTP_AUTH_KEY = 23 +SCTP_AUTOCLOSE = 4 +SCTP_AUTO_ASCONF = 30 +SCTP_CONTEXT = 17 +SCTP_DEFAULT_SEND_PARAM = 10 +SCTP_DEFAULT_SNDINFO = 34 +SCTP_DELAYED_SACK = 16 +SCTP_DISABLE_FRAGMENTS = 8 +SCTP_EOF = 512 +SCTP_EVENTS = 11 +SCTP_FRAGMENT_INTERLEAVE = 18 +SCTP_GET_ASSOC_ID_LIST = 29 +SCTP_GET_ASSOC_NUMBER = 28 +SCTP_GET_ASSOC_STATS = 112 +SCTP_GET_LOCAL_ADDRS = 109 +SCTP_GET_PEER_ADDRS = 108 +SCTP_GET_PEER_ADDR_INFO = 15 +SCTP_HMAC_IDENT = 22 +SCTP_INIT = 0 +SCTP_INITMSG = 2 +SCTP_I_WANT_MAPPED_V4_ADDR = 12 +SCTP_LOCAL_AUTH_CHUNKS = 27 +SCTP_MAXSEG = 13 +SCTP_MAX_BURST = 20 +SCTP_NODELAY = 3 +SCTP_PARTIAL_DELIVERY_POINT = 19 +SCTP_PEER_ADDR_PARAMS = 9 +SCTP_PEER_ADDR_THLDS = 31 +SCTP_PEER_AUTH_CHUNKS = 26 +SCTP_PRIMARY_ADDR = 6 +SCTP_RECVNXTINFO = 33 +SCTP_RECVRCVINFO = 32 +SCTP_RTOINFO = 0 +SCTP_SET_PEER_PRIMARY_ADDR = 5 +SCTP_SNDINFO = 2 +SCTP_SNDRCV = 1 +SCTP_SOCKOPT_BINDX_ADD = 100 +SCTP_SOCKOPT_BINDX_REM = 101 +SCTP_SOCKOPT_CONNECTX = 110 +SCTP_SOCKOPT_CONNECTX3 = 111 +SCTP_SOCKOPT_CONNECTX_OLD = 107 +SCTP_SOCKOPT_PEELOFF = 102 +SCTP_STATUS = 14 +SCTP_UNORDERED = 1 +SIOCINQ = 1074030207 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SCTP = 132 +SPP_HB_DEMAND = 4 +SPP_HB_DISABLE = 2 +SPP_HB_ENABLE = 1 +SPP_HB_TIME_IS_ZERO = 128 +SPP_PMTUD_DISABLE = 16 +SPP_PMTUD_ENABLE = 8 +SPP_SACKDELAY_DISABLE = 64 +SPP_SACKDELAY_ENABLE = 32 +__NR_accept = 330 +__NR_accept4 = 344 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_getsockopt = 340 +__NR_ioctl = 54 +__NR_recvfrom = 337 +__NR_sendmmsg = 349 +__NR_sendmsg = 341 +__NR_sendto = 335 +__NR_setsockopt = 339 +__NR_socket = 326 +__NR_socketpair = 333 diff --git a/sys/socket_inet_tcp.txt b/sys/socket_inet_tcp.txt new file mode 100644 index 000000000..c4d8fdae9 --- /dev/null +++ b/sys/socket_inet_tcp.txt @@ -0,0 +1,49 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_INET and AF_INET6: TCP support + +include <linux/tcp.h> + +resource sock_tcp[sock] + +socket$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0]) sock_tcp +socketpair$tcp(domain const[AF_INET], type const[SOCK_STREAM], proto const[0], fds ptr[out, tcp_pair]) +accept$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_tcp +accept4$tcp(fd sock_tcp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_tcp +bind$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr]) +connect$tcp(fd sock_tcp, addr ptr[in, sockaddr_in], addrlen len[addr]) +sendto$tcp(fd sock_tcp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +recvfrom$tcp(fd sock_tcp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +getsockname$tcp(fd sock_tcp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) +getpeername$tcp(fd sock_tcp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) + +tcp_pair { + f0 sock_tcp + f1 sock_tcp +} + +resource sock_tcp6[sock] + +socket$tcp6(domain const[AF_INET6], type const[SOCK_STREAM], proto const[0]) sock_tcp6 +socketpair$tcp6(domain const[AF_INET6], type const[SOCK_STREAM], proto const[0], fds ptr[out, tcp6_pair]) +accept$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_tcp6 +accept4$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_tcp6 +bind$tcp6(fd sock_tcp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +connect$tcp6(fd sock_tcp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +sendto$tcp6(fd sock_tcp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +recvfrom$tcp6(fd sock_tcp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +getsockname$tcp6(fd sock_tcp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) +getpeername$tcp6(fd sock_tcp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) + +tcp6_pair { + f0 sock_tcp6 + f1 sock_tcp6 +} + +sockopt_opt_tcp_int = TCP_CORK, TCP_DEFER_ACCEPT, TCP_KEEPCNT, TCP_KEEPIDLE, TCP_KEEPINTVL, TCP_LINGER2, TCP_MAXSEG, TCP_NODELAY, TCP_QUICKACK, TCP_SYNCNT, TCP_WINDOW_CLAMP + +getsockopt$tcp_int(fd sock, level const[IPPROTO_TCP], optname flags[sockopt_opt_tcp_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) +setsockopt$tcp_int(fd sock, level const[IPPROTO_TCP], optname flags[sockopt_opt_tcp_int], optval ptr[in, int32], optlen len[optval]) +getsockopt$tcp_buf(fd sock, level const[IPPROTO_TCP], optname const[TCP_INFO], optval buffer[out], optlen ptr[inout, len[optval, int32]]) +setsockopt$tcp_buf(fd sock, level const[IPPROTO_TCP], optname const[TCP_INFO], optval buffer[in], optlen len[optval]) diff --git a/sys/socket_inet_tcp_amd64.const b/sys/socket_inet_tcp_amd64.const new file mode 100644 index 000000000..9d58825e7 --- /dev/null +++ b/sys/socket_inet_tcp_amd64.const @@ -0,0 +1,29 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_TCP = 6 +SOCK_STREAM = 1 +TCP_CORK = 3 +TCP_DEFER_ACCEPT = 9 +TCP_INFO = 11 +TCP_KEEPCNT = 6 +TCP_KEEPIDLE = 4 +TCP_KEEPINTVL = 5 +TCP_LINGER2 = 8 +TCP_MAXSEG = 2 +TCP_NODELAY = 1 +TCP_QUICKACK = 12 +TCP_SYNCNT = 7 +TCP_WINDOW_CLAMP = 10 +__NR_accept = 43 +__NR_accept4 = 288 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_getsockopt = 55 +__NR_recvfrom = 45 +__NR_sendto = 44 +__NR_setsockopt = 54 +__NR_socket = 41 +__NR_socketpair = 53 diff --git a/sys/socket_inet_tcp_arm64.const b/sys/socket_inet_tcp_arm64.const new file mode 100644 index 000000000..f43649f49 --- /dev/null +++ b/sys/socket_inet_tcp_arm64.const @@ -0,0 +1,29 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_TCP = 6 +SOCK_STREAM = 1 +TCP_CORK = 3 +TCP_DEFER_ACCEPT = 9 +TCP_INFO = 11 +TCP_KEEPCNT = 6 +TCP_KEEPIDLE = 4 +TCP_KEEPINTVL = 5 +TCP_LINGER2 = 8 +TCP_MAXSEG = 2 +TCP_NODELAY = 1 +TCP_QUICKACK = 12 +TCP_SYNCNT = 7 +TCP_WINDOW_CLAMP = 10 +__NR_accept = 202 +__NR_accept4 = 242 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_getsockopt = 209 +__NR_recvfrom = 207 +__NR_sendto = 206 +__NR_setsockopt = 208 +__NR_socket = 198 +__NR_socketpair = 199 diff --git a/sys/socket_inet_tcp_ppc64le.const b/sys/socket_inet_tcp_ppc64le.const new file mode 100644 index 000000000..c82d7ed3d --- /dev/null +++ b/sys/socket_inet_tcp_ppc64le.const @@ -0,0 +1,29 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_TCP = 6 +SOCK_STREAM = 1 +TCP_CORK = 3 +TCP_DEFER_ACCEPT = 9 +TCP_INFO = 11 +TCP_KEEPCNT = 6 +TCP_KEEPIDLE = 4 +TCP_KEEPINTVL = 5 +TCP_LINGER2 = 8 +TCP_MAXSEG = 2 +TCP_NODELAY = 1 +TCP_QUICKACK = 12 +TCP_SYNCNT = 7 +TCP_WINDOW_CLAMP = 10 +__NR_accept = 330 +__NR_accept4 = 344 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_getsockopt = 340 +__NR_recvfrom = 337 +__NR_sendto = 335 +__NR_setsockopt = 339 +__NR_socket = 326 +__NR_socketpair = 333 diff --git a/sys/socket_inet_udp.txt b/sys/socket_inet_udp.txt new file mode 100644 index 000000000..20151fdd2 --- /dev/null +++ b/sys/socket_inet_udp.txt @@ -0,0 +1,45 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_INET and AF_INET6: UDP support + +include <linux/udp.h> + +resource sock_udp[sock] + +socket$udp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[0]) sock_udp +socketpair$udp(domain const[AF_INET], type const[SOCK_DGRAM], proto const[0], fds ptr[out, udp_pair]) +accept$udp(fd sock_udp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]]) sock_udp +accept4$udp(fd sock_udp, peer ptr[out, sockaddr_in, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_udp +bind$udp(fd sock_udp, addr ptr[in, sockaddr_in], addrlen len[addr]) +connect$udp(fd sock_udp, addr ptr[in, sockaddr_in], addrlen len[addr]) +sendto$udp(fd sock_udp, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +recvfrom$udp(fd sock_udp, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in, opt], addrlen len[addr]) +getsockname$udp(fd sock_udp, addr ptr[out, sockaddr_in], addrlen ptr[inout, len[addr, int32]]) +getpeername$udp(fd sock_udp, peer ptr[out, sockaddr_in], peerlen ptr[inout, len[peer, int32]]) + +udp_pair { + f0 sock_udp + f1 sock_udp +} + +resource sock_udp6[sock] + +socket$udp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[0]) sock_udp6 +socketpair$udp6(domain const[AF_INET6], type const[SOCK_DGRAM], proto const[0], fds ptr[out, udp6_pair]) +accept$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]]) sock_udp6 +accept4$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_udp6 +bind$udp6(fd sock_udp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +connect$udp6(fd sock_udp6, addr ptr[in, sockaddr_in6], addrlen len[addr]) +sendto$udp6(fd sock_udp6, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +recvfrom$udp6(fd sock_udp6, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_in6, opt], addrlen len[addr]) +getsockname$udp6(fd sock_udp6, addr ptr[out, sockaddr_in6], addrlen ptr[inout, len[addr, int32]]) +getpeername$udp6(fd sock_udp6, peer ptr[out, sockaddr_in6], peerlen ptr[inout, len[peer, int32]]) + +udp6_pair { + f0 sock_udp6 + f1 sock_udp6 +} + +getsockopt$udp_int(fd sock, level const[IPPROTO_UDP], optname const[UDP_CORK], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]]) +setsockopt$udp_int(fd sock, level const[IPPROTO_UDP], optname const[UDP_CORK], optval ptr[in, int32], optlen len[optval]) diff --git a/sys/socket_inet_udp_amd64.const b/sys/socket_inet_udp_amd64.const new file mode 100644 index 000000000..2357f1ca3 --- /dev/null +++ b/sys/socket_inet_udp_amd64.const @@ -0,0 +1,18 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_UDP = 17 +SOCK_DGRAM = 2 +UDP_CORK = 1 +__NR_accept = 43 +__NR_accept4 = 288 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_getsockopt = 55 +__NR_recvfrom = 45 +__NR_sendto = 44 +__NR_setsockopt = 54 +__NR_socket = 41 +__NR_socketpair = 53 diff --git a/sys/socket_inet_udp_arm64.const b/sys/socket_inet_udp_arm64.const new file mode 100644 index 000000000..bea5eb77c --- /dev/null +++ b/sys/socket_inet_udp_arm64.const @@ -0,0 +1,18 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_UDP = 17 +SOCK_DGRAM = 2 +UDP_CORK = 1 +__NR_accept = 202 +__NR_accept4 = 242 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_getsockopt = 209 +__NR_recvfrom = 207 +__NR_sendto = 206 +__NR_setsockopt = 208 +__NR_socket = 198 +__NR_socketpair = 199 diff --git a/sys/socket_inet_udp_ppc64le.const b/sys/socket_inet_udp_ppc64le.const new file mode 100644 index 000000000..2cccf51da --- /dev/null +++ b/sys/socket_inet_udp_ppc64le.const @@ -0,0 +1,18 @@ +# AUTOGENERATED FILE +AF_INET = 2 +AF_INET6 = 10 +IPPROTO_UDP = 17 +SOCK_DGRAM = 2 +UDP_CORK = 1 +__NR_accept = 330 +__NR_accept4 = 344 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_getsockopt = 340 +__NR_recvfrom = 337 +__NR_sendto = 335 +__NR_setsockopt = 339 +__NR_socket = 326 +__NR_socketpair = 333 diff --git a/sys/kcm.txt b/sys/socket_kcm.txt index feb7eb80c..feb7eb80c 100755 --- a/sys/kcm.txt +++ b/sys/socket_kcm.txt diff --git a/sys/socket_kcm_amd64.const b/sys/socket_kcm_amd64.const new file mode 100644 index 000000000..5abfdf57c --- /dev/null +++ b/sys/socket_kcm_amd64.const @@ -0,0 +1,16 @@ +# AUTOGENERATED FILE +AF_KCM = 41 +KCMPROTO_CONNECTED = 0 +KCM_RECV_DISABLE = 1 +SIOCKCMATTACH = 35296 +SIOCKCMCLONE = 35298 +SIOCKCMUNATTACH = 35297 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOL_KCM = 281 +__NR_getsockopt = 55 +__NR_ioctl = 16 +__NR_recvmsg = 47 +__NR_sendmsg = 46 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_kcm_arm64.const b/sys/socket_kcm_arm64.const new file mode 100644 index 000000000..518eb36db --- /dev/null +++ b/sys/socket_kcm_arm64.const @@ -0,0 +1,16 @@ +# AUTOGENERATED FILE +AF_KCM = 41 +KCMPROTO_CONNECTED = 0 +KCM_RECV_DISABLE = 1 +SIOCKCMATTACH = 35296 +SIOCKCMCLONE = 35298 +SIOCKCMUNATTACH = 35297 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOL_KCM = 281 +__NR_getsockopt = 209 +__NR_ioctl = 29 +__NR_recvmsg = 212 +__NR_sendmsg = 211 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_kcm_ppc64le.const b/sys/socket_kcm_ppc64le.const new file mode 100644 index 000000000..89120128d --- /dev/null +++ b/sys/socket_kcm_ppc64le.const @@ -0,0 +1,16 @@ +# AUTOGENERATED FILE +AF_KCM = 41 +KCMPROTO_CONNECTED = 0 +KCM_RECV_DISABLE = 1 +SIOCKCMATTACH = 35296 +SIOCKCMCLONE = 35298 +SIOCKCMUNATTACH = 35297 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOL_KCM = 281 +__NR_getsockopt = 340 +__NR_ioctl = 54 +__NR_recvmsg = 342 +__NR_sendmsg = 341 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/socket_key.txt b/sys/socket_key.txt new file mode 100644 index 000000000..1d1ab0cb0 --- /dev/null +++ b/sys/socket_key.txt @@ -0,0 +1,13 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_KEY support. + +include <linux/socket.h> +include <linux/net.h> +include <uapi/linux/pfkeyv2.h> + +resource sock_key[sock] + +# See net/key/af_key.c, requires root. +# socket$key(domain const[AF_KEY], type const[SOCK_RAW], proto const[PF_KEY_V2]) sock_key diff --git a/sys/socket_key_amd64.const b/sys/socket_key_amd64.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/socket_key_amd64.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/socket_key_arm64.const b/sys/socket_key_arm64.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/socket_key_arm64.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/socket_key_ppc64le.const b/sys/socket_key_ppc64le.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/socket_key_ppc64le.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/netlink.txt b/sys/socket_netlink.txt index dddd14954..c58807fb5 100644 --- a/sys/netlink.txt +++ b/sys/socket_netlink.txt @@ -1,6 +1,8 @@ -# Copyright 2015 syzkaller project authors. All rights reserved. +# Copyright 2017 syzkaller project authors. All rights reserved. # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. +# AF_NETLINK support. + include <linux/net.h> include <uapi/linux/netlink.h> diff --git a/sys/socket_netlink_amd64.const b/sys/socket_netlink_amd64.const new file mode 100644 index 000000000..bd9793acd --- /dev/null +++ b/sys/socket_netlink_amd64.const @@ -0,0 +1,59 @@ +# AUTOGENERATED FILE +AF_NETLINK = 16 +AF_UNSPEC = 0 +NETLINK_ADD_MEMBERSHIP = 1 +NETLINK_AUDIT = 9 +NETLINK_BROADCAST_ERROR = 4 +NETLINK_CAP_ACK = 10 +NETLINK_CONNECTOR = 11 +NETLINK_CRYPTO = 21 +NETLINK_DNRTMSG = 14 +NETLINK_DROP_MEMBERSHIP = 2 +NETLINK_ECRYPTFS = 19 +NETLINK_FIB_LOOKUP = 10 +NETLINK_FIREWALL = 3 +NETLINK_GENERIC = 16 +NETLINK_INET_DIAG = 4 +NETLINK_IP6_FW = 13 +NETLINK_ISCSI = 8 +NETLINK_KOBJECT_UEVENT = 15 +NETLINK_LISTEN_ALL_NSID = 8 +NETLINK_LIST_MEMBERSHIPS = 9 +NETLINK_NETFILTER = 12 +NETLINK_NFLOG = 5 +NETLINK_NO_ENOBUFS = 5 +NETLINK_PKTINFO = 3 +NETLINK_RDMA = 20 +NETLINK_ROUTE = 0 +NETLINK_RX_RING = 6 +NETLINK_SCSITRANSPORT = 18 +NETLINK_SELINUX = 7 +NETLINK_SOCK_DIAG = 4 +NETLINK_TX_RING = 7 +NETLINK_UNUSED = 1 +NETLINK_USERSOCK = 2 +NETLINK_XFRM = 6 +NLM_F_ACK = 4 +NLM_F_APPEND = 2048 +NLM_F_ATOMIC = 1024 +NLM_F_CREATE = 1024 +NLM_F_DUMP = 768 +NLM_F_DUMP_FILTERED = 32 +NLM_F_DUMP_INTR = 16 +NLM_F_ECHO = 8 +NLM_F_EXCL = 512 +NLM_F_MATCH = 512 +NLM_F_MULTI = 2 +NLM_F_REPLACE = 256 +NLM_F_REQUEST = 1 +NLM_F_ROOT = 256 +SOCK_RAW = 3 +SOL_NETLINK = 270 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_getsockopt = 55 +__NR_sendmsg = 46 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_netlink_arm64.const b/sys/socket_netlink_arm64.const new file mode 100644 index 000000000..6e21dcae1 --- /dev/null +++ b/sys/socket_netlink_arm64.const @@ -0,0 +1,59 @@ +# AUTOGENERATED FILE +AF_NETLINK = 16 +AF_UNSPEC = 0 +NETLINK_ADD_MEMBERSHIP = 1 +NETLINK_AUDIT = 9 +NETLINK_BROADCAST_ERROR = 4 +NETLINK_CAP_ACK = 10 +NETLINK_CONNECTOR = 11 +NETLINK_CRYPTO = 21 +NETLINK_DNRTMSG = 14 +NETLINK_DROP_MEMBERSHIP = 2 +NETLINK_ECRYPTFS = 19 +NETLINK_FIB_LOOKUP = 10 +NETLINK_FIREWALL = 3 +NETLINK_GENERIC = 16 +NETLINK_INET_DIAG = 4 +NETLINK_IP6_FW = 13 +NETLINK_ISCSI = 8 +NETLINK_KOBJECT_UEVENT = 15 +NETLINK_LISTEN_ALL_NSID = 8 +NETLINK_LIST_MEMBERSHIPS = 9 +NETLINK_NETFILTER = 12 +NETLINK_NFLOG = 5 +NETLINK_NO_ENOBUFS = 5 +NETLINK_PKTINFO = 3 +NETLINK_RDMA = 20 +NETLINK_ROUTE = 0 +NETLINK_RX_RING = 6 +NETLINK_SCSITRANSPORT = 18 +NETLINK_SELINUX = 7 +NETLINK_SOCK_DIAG = 4 +NETLINK_TX_RING = 7 +NETLINK_UNUSED = 1 +NETLINK_USERSOCK = 2 +NETLINK_XFRM = 6 +NLM_F_ACK = 4 +NLM_F_APPEND = 2048 +NLM_F_ATOMIC = 1024 +NLM_F_CREATE = 1024 +NLM_F_DUMP = 768 +NLM_F_DUMP_FILTERED = 32 +NLM_F_DUMP_INTR = 16 +NLM_F_ECHO = 8 +NLM_F_EXCL = 512 +NLM_F_MATCH = 512 +NLM_F_MULTI = 2 +NLM_F_REPLACE = 256 +NLM_F_REQUEST = 1 +NLM_F_ROOT = 256 +SOCK_RAW = 3 +SOL_NETLINK = 270 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_getsockopt = 209 +__NR_sendmsg = 211 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_netlink_ppc64le.const b/sys/socket_netlink_ppc64le.const new file mode 100644 index 000000000..dd73dbd3e --- /dev/null +++ b/sys/socket_netlink_ppc64le.const @@ -0,0 +1,59 @@ +# AUTOGENERATED FILE +AF_NETLINK = 16 +AF_UNSPEC = 0 +NETLINK_ADD_MEMBERSHIP = 1 +NETLINK_AUDIT = 9 +NETLINK_BROADCAST_ERROR = 4 +NETLINK_CAP_ACK = 10 +NETLINK_CONNECTOR = 11 +NETLINK_CRYPTO = 21 +NETLINK_DNRTMSG = 14 +NETLINK_DROP_MEMBERSHIP = 2 +NETLINK_ECRYPTFS = 19 +NETLINK_FIB_LOOKUP = 10 +NETLINK_FIREWALL = 3 +NETLINK_GENERIC = 16 +NETLINK_INET_DIAG = 4 +NETLINK_IP6_FW = 13 +NETLINK_ISCSI = 8 +NETLINK_KOBJECT_UEVENT = 15 +NETLINK_LISTEN_ALL_NSID = 8 +NETLINK_LIST_MEMBERSHIPS = 9 +NETLINK_NETFILTER = 12 +NETLINK_NFLOG = 5 +NETLINK_NO_ENOBUFS = 5 +NETLINK_PKTINFO = 3 +NETLINK_RDMA = 20 +NETLINK_ROUTE = 0 +NETLINK_RX_RING = 6 +NETLINK_SCSITRANSPORT = 18 +NETLINK_SELINUX = 7 +NETLINK_SOCK_DIAG = 4 +NETLINK_TX_RING = 7 +NETLINK_UNUSED = 1 +NETLINK_USERSOCK = 2 +NETLINK_XFRM = 6 +NLM_F_ACK = 4 +NLM_F_APPEND = 2048 +NLM_F_ATOMIC = 1024 +NLM_F_CREATE = 1024 +NLM_F_DUMP = 768 +NLM_F_DUMP_FILTERED = 32 +NLM_F_DUMP_INTR = 16 +NLM_F_ECHO = 8 +NLM_F_EXCL = 512 +NLM_F_MATCH = 512 +NLM_F_MULTI = 2 +NLM_F_REPLACE = 256 +NLM_F_REQUEST = 1 +NLM_F_ROOT = 256 +SOCK_RAW = 3 +SOL_NETLINK = 270 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_getsockopt = 340 +__NR_sendmsg = 341 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/netrom.txt b/sys/socket_netrom.txt index d346e85d0..d346e85d0 100755 --- a/sys/netrom.txt +++ b/sys/socket_netrom.txt diff --git a/sys/socket_netrom_amd64.const b/sys/socket_netrom_amd64.const new file mode 100644 index 000000000..2474fe63f --- /dev/null +++ b/sys/socket_netrom_amd64.const @@ -0,0 +1,27 @@ +# AUTOGENERATED FILE +AF_NETROM = 6 +AX25_MAX_DIGIS = 8 +NETROM_IDLE = 7 +NETROM_N2 = 3 +NETROM_T1 = 1 +NETROM_T2 = 2 +NETROM_T4 = 6 +SIOCADDRT = 35083 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_SEQPACKET = 5 +SOL_NETROM = 259 +TIOCINQ = 21531 +TIOCOUTQ = 21521 +__NR_accept = 43 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_getsockopt = 55 +__NR_ioctl = 16 +__NR_listen = 50 +__NR_recvmsg = 47 +__NR_sendmsg = 46 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_netrom_arm64.const b/sys/socket_netrom_arm64.const new file mode 100644 index 000000000..1ecee7cdc --- /dev/null +++ b/sys/socket_netrom_arm64.const @@ -0,0 +1,27 @@ +# AUTOGENERATED FILE +AF_NETROM = 6 +AX25_MAX_DIGIS = 8 +NETROM_IDLE = 7 +NETROM_N2 = 3 +NETROM_T1 = 1 +NETROM_T2 = 2 +NETROM_T4 = 6 +SIOCADDRT = 35083 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_SEQPACKET = 5 +SOL_NETROM = 259 +TIOCINQ = 21531 +TIOCOUTQ = 21521 +__NR_accept = 202 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_getsockopt = 209 +__NR_ioctl = 29 +__NR_listen = 201 +__NR_recvmsg = 212 +__NR_sendmsg = 211 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_netrom_ppc64le.const b/sys/socket_netrom_ppc64le.const new file mode 100644 index 000000000..322abdf38 --- /dev/null +++ b/sys/socket_netrom_ppc64le.const @@ -0,0 +1,27 @@ +# AUTOGENERATED FILE +AF_NETROM = 6 +AX25_MAX_DIGIS = 8 +NETROM_IDLE = 7 +NETROM_N2 = 3 +NETROM_T1 = 1 +NETROM_T2 = 2 +NETROM_T4 = 6 +SIOCADDRT = 35083 +SIOCGSTAMP = 35078 +SIOCGSTAMPNS = 35079 +SOCK_SEQPACKET = 5 +SOL_NETROM = 259 +TIOCINQ = 1074030207 +TIOCOUTQ = 1074033779 +__NR_accept = 330 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_getsockopt = 340 +__NR_ioctl = 54 +__NR_listen = 329 +__NR_recvmsg = 342 +__NR_sendmsg = 341 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/socket_nfc.txt b/sys/socket_nfc.txt new file mode 100644 index 000000000..db388f49e --- /dev/null +++ b/sys/socket_nfc.txt @@ -0,0 +1,58 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_NFC support. + +include <linux/socket.h> +include <linux/net.h> +include <uapi/linux/nfc.h> + +resource sock_nfc_llcp[sock] + +socket$nfc_llcp(domain const[AF_NFC], type flags[nfc_llcp_type], proto const[NFC_SOCKPROTO_LLCP]) sock_nfc_llcp +bind$nfc_llcp(fd sock_nfc_llcp, addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) +connect$nfc_llcp(fd sock_nfc_llcp, addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) +accept$nfc_llcp(fd sock_nfc_llcp, peer ptr[out, sockaddr_nfc_llcp, opt], peerlen ptr[inout, len[peer, int32]]) sock_nfc_llcp +setsockopt$NFC_LLCP_RW(fd sock_nfc_llcp, level const[SOL_NFC], opt const[NFC_LLCP_RW], arg ptr[in, int32], arglen len[arg]) +setsockopt$NFC_LLCP_MIUX(fd sock_nfc_llcp, level const[SOL_NFC], opt const[NFC_LLCP_MIUX], arg ptr[in, int32], arglen len[arg]) +getsockopt$nfc_llcp(fd sock_nfc_llcp, level const[SOL_NFC], opt flags[nfc_llcp_opts], arg buffer[out], arglen len[arg]) +sendmsg$nfc_llcp(fd sock_nfc_llcp, msg ptr[in, nfc_llcp_send_msghdr], f flags[send_flags]) +sendmmsg$nfc_llcp(fd sock_nfc_llcp, mmsg ptr[in, array[nfc_llcp_send_msghdr]], vlen len[mmsg], f flags[send_flags]) + +resource sock_nfc_raw[sock] + +socket$nfc_raw(domain const[AF_NFC], type flags[nfc_raw_type], proto const[NFC_SOCKPROTO_RAW]) sock_nfc_raw +connect$nfc_raw(fd sock_nfc_raw, addr ptr[in, sockaddr_nfc], addrlen len[addr]) + +nfc_llcp_type = SOCK_STREAM, SOCK_DGRAM, SOCK_RAW +nfc_raw_type = SOCK_STREAM, SOCK_RAW +nfc_proto = NFC_PROTO_JEWEL, NFC_PROTO_MIFARE, NFC_PROTO_FELICA, NFC_PROTO_ISO14443, NFC_PROTO_NFC_DEP, NFC_PROTO_ISO14443_B, NFC_PROTO_ISO15693 +nfc_llcp_opts = NFC_LLCP_RW, NFC_LLCP_MIUX, NFC_LLCP_REMOTE_MIU, NFC_LLCP_REMOTE_LTO, NFC_LLCP_REMOTE_RW + +sockaddr_nfc_llcp { + family const[AF_NFC, int16] + devidx int32 + target int32 + proto flags[nfc_proto, int32] + dsap int8 + ssap int8 + serv array[int8, 63] + servlen intptr +} + +sockaddr_nfc { + family const[AF_NFC, int16] + dev int32 + targ int32 + proto flags[nfc_proto, int32] +} + +nfc_llcp_send_msghdr { + addr ptr[in, sockaddr_nfc_llcp] + addrlen len[addr, int32] + vec ptr[in, array[iovec_in]] + vlen len[vec, intptr] + ctrl ptr[in, cmsghdr] + ctrllen len[ctrl, intptr] + f flags[send_flags, int32] +} diff --git a/sys/socket_nfc_amd64.const b/sys/socket_nfc_amd64.const new file mode 100644 index 000000000..a3957eb8d --- /dev/null +++ b/sys/socket_nfc_amd64.const @@ -0,0 +1,28 @@ +# AUTOGENERATED FILE +AF_NFC = 39 +NFC_LLCP_MIUX = 1 +NFC_LLCP_REMOTE_LTO = 3 +NFC_LLCP_REMOTE_MIU = 2 +NFC_LLCP_REMOTE_RW = 4 +NFC_LLCP_RW = 0 +NFC_PROTO_FELICA = 3 +NFC_PROTO_ISO14443 = 4 +NFC_PROTO_ISO14443_B = 6 +NFC_PROTO_ISO15693 = 7 +NFC_PROTO_JEWEL = 1 +NFC_PROTO_MIFARE = 2 +NFC_PROTO_NFC_DEP = 5 +NFC_SOCKPROTO_LLCP = 1 +NFC_SOCKPROTO_RAW = 0 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_STREAM = 1 +SOL_NFC = 280 +__NR_accept = 43 +__NR_bind = 49 +__NR_connect = 42 +__NR_getsockopt = 55 +__NR_sendmmsg = 307 +__NR_sendmsg = 46 +__NR_setsockopt = 54 +__NR_socket = 41 diff --git a/sys/socket_nfc_arm64.const b/sys/socket_nfc_arm64.const new file mode 100644 index 000000000..72a209079 --- /dev/null +++ b/sys/socket_nfc_arm64.const @@ -0,0 +1,28 @@ +# AUTOGENERATED FILE +AF_NFC = 39 +NFC_LLCP_MIUX = 1 +NFC_LLCP_REMOTE_LTO = 3 +NFC_LLCP_REMOTE_MIU = 2 +NFC_LLCP_REMOTE_RW = 4 +NFC_LLCP_RW = 0 +NFC_PROTO_FELICA = 3 +NFC_PROTO_ISO14443 = 4 +NFC_PROTO_ISO14443_B = 6 +NFC_PROTO_ISO15693 = 7 +NFC_PROTO_JEWEL = 1 +NFC_PROTO_MIFARE = 2 +NFC_PROTO_NFC_DEP = 5 +NFC_SOCKPROTO_LLCP = 1 +NFC_SOCKPROTO_RAW = 0 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_STREAM = 1 +SOL_NFC = 280 +__NR_accept = 202 +__NR_bind = 200 +__NR_connect = 203 +__NR_getsockopt = 209 +__NR_sendmmsg = 269 +__NR_sendmsg = 211 +__NR_setsockopt = 208 +__NR_socket = 198 diff --git a/sys/socket_nfc_ppc64le.const b/sys/socket_nfc_ppc64le.const new file mode 100644 index 000000000..dcd7dfe1e --- /dev/null +++ b/sys/socket_nfc_ppc64le.const @@ -0,0 +1,28 @@ +# AUTOGENERATED FILE +AF_NFC = 39 +NFC_LLCP_MIUX = 1 +NFC_LLCP_REMOTE_LTO = 3 +NFC_LLCP_REMOTE_MIU = 2 +NFC_LLCP_REMOTE_RW = 4 +NFC_LLCP_RW = 0 +NFC_PROTO_FELICA = 3 +NFC_PROTO_ISO14443 = 4 +NFC_PROTO_ISO14443_B = 6 +NFC_PROTO_ISO15693 = 7 +NFC_PROTO_JEWEL = 1 +NFC_PROTO_MIFARE = 2 +NFC_PROTO_NFC_DEP = 5 +NFC_SOCKPROTO_LLCP = 1 +NFC_SOCKPROTO_RAW = 0 +SOCK_DGRAM = 2 +SOCK_RAW = 3 +SOCK_STREAM = 1 +SOL_NFC = 280 +__NR_accept = 330 +__NR_bind = 327 +__NR_connect = 328 +__NR_getsockopt = 340 +__NR_sendmmsg = 349 +__NR_sendmsg = 341 +__NR_setsockopt = 339 +__NR_socket = 326 diff --git a/sys/socket_ppc64le.const b/sys/socket_ppc64le.const index 813d52854..f563a1729 100644 --- a/sys/socket_ppc64le.const +++ b/sys/socket_ppc64le.const @@ -1,188 +1,14 @@ # AUTOGENERATED FILE -AF_ALG = 38 AF_APPLETALK = 5 AF_ATMPVC = 8 AF_AX25 = 3 -AF_BLUETOOTH = 31 AF_INET = 2 AF_INET6 = 10 AF_IPX = 4 AF_NETLINK = 16 -AF_NFC = 39 AF_PACKET = 17 AF_UNIX = 1 -AF_UNSPEC = 0 AF_X25 = 9 -ALG_SET_AEAD_ASSOCLEN = 4 -ALG_SET_AEAD_AUTHSIZE = 5 -ALG_SET_IV = 2 -ALG_SET_KEY = 1 -ALG_SET_OP = 3 -BNEPCONNADD = 2147762888 -BNEPCONNDEL = 2147762889 -BNEPGETCONNINFO = 1074021075 -BNEPGETCONNLIST = 1074021074 -BNEPGETSUPPFEAT = 1074021076 -BTPROTO_BNEP = 4 -BTPROTO_CMTP = 5 -BTPROTO_HCI = 1 -BTPROTO_HIDP = 6 -BTPROTO_L2CAP = 0 -BTPROTO_RFCOMM = 3 -BTPROTO_SCO = 2 -BT_CHANNEL_POLICY = 10 -BT_DEFER_SETUP = 7 -BT_FLUSHABLE = 8 -BT_POWER = 9 -BT_RCVMTU = 13 -BT_SECURITY = 4 -BT_SNDMTU = 12 -BT_VOICE = 11 -CMTPCONNADD = 2147763144 -CMTPCONNDEL = 2147763145 -CMTPGETCONNINFO = 1074021331 -CMTPGETCONNLIST = 1074021330 -CRYPTO_ALG_ASYNC = 128 -CRYPTO_ALG_DEAD = 32 -CRYPTO_ALG_DYING = 64 -CRYPTO_ALG_GENIV = 512 -CRYPTO_ALG_INSTANCE = 2048 -CRYPTO_ALG_INTERNAL = 8192 -CRYPTO_ALG_KERN_DRIVER_ONLY = 4096 -CRYPTO_ALG_LARVAL = 16 -CRYPTO_ALG_NEED_FALLBACK = 256 -CRYPTO_ALG_TESTED = 1024 -CRYPTO_ALG_TYPE_ABLKCIPHER = 5 -CRYPTO_ALG_TYPE_AEAD = 3 -CRYPTO_ALG_TYPE_AHASH = 15 -CRYPTO_ALG_TYPE_AKCIPHER = 13 -CRYPTO_ALG_TYPE_BLKCIPHER = 4 -CRYPTO_ALG_TYPE_CIPHER = 1 -CRYPTO_ALG_TYPE_COMPRESS = 2 -CRYPTO_ALG_TYPE_DIGEST = 14 -CRYPTO_ALG_TYPE_GIVCIPHER = 6 -CRYPTO_ALG_TYPE_HASH = 14 -CRYPTO_ALG_TYPE_MASK = 15 -CRYPTO_ALG_TYPE_PCOMPRESS = 15 -CRYPTO_ALG_TYPE_RNG = 12 -CRYPTO_ALG_TYPE_SHASH = 14 -HCIBLOCKADDR = 2147764454 -HCIDEVDOWN = 2147764426 -HCIDEVRESET = 2147764427 -HCIDEVRESTAT = 2147764428 -HCIDEVUP = 2147764425 -HCIGETAUTHINFO = 1074022615 -HCIGETCONNINFO = 1074022613 -HCIGETCONNLIST = 1074022612 -HCIGETDEVINFO = 1074022611 -HCIGETDEVLIST = 1074022610 -HCIINQUIRY = 1074022640 -HCISETACLMTU = 2147764451 -HCISETAUTH = 2147764446 -HCISETENCRYPT = 2147764447 -HCISETLINKMODE = 2147764450 -HCISETLINKPOL = 2147764449 -HCISETPTYPE = 2147764448 -HCISETRAW = 2147764444 -HCISETSCAN = 2147764445 -HCISETSCOMTU = 2147764452 -HCIUNBLOCKADDR = 2147764455 -HCI_CHANNEL_CONTROL = 3 -HCI_CHANNEL_MONITOR = 2 -HCI_CHANNEL_RAW = 0 -HCI_CHANNEL_USER = 1 -HCI_DATA_DIR = 1 -HCI_FILTER = 2 -HCI_TIME_STAMP = 3 -HIDPCONNADD = 2147764424 -HIDPCONNDEL = 2147764425 -HIDPGETCONNINFO = 1074022611 -HIDPGETCONNLIST = 1074022610 -IPPROTO_ICMP = 1 -IPPROTO_IP = 0 -IPPROTO_IPV6 = 41 -IPPROTO_TCP = 6 -IPPROTO_UDP = 17 -IPV6_2292DSTOPTS = 4 -IPV6_2292HOPLIMIT = 8 -IPV6_2292HOPOPTS = 3 -IPV6_2292PKTINFO = 2 -IPV6_2292PKTOPTIONS = 6 -IPV6_2292RTHDR = 5 -IPV6_ADDRFORM = 1 -IPV6_ADD_MEMBERSHIP = 20 -IPV6_AUTHHDR = 10 -IPV6_CHECKSUM = 7 -IPV6_DROP_MEMBERSHIP = 21 -IPV6_DSTOPTS = 59 -IPV6_FLOWINFO = 11 -IPV6_HOPLIMIT = 52 -IPV6_HOPOPTS = 54 -IPV6_JOIN_ANYCAST = 27 -IPV6_LEAVE_ANYCAST = 28 -IPV6_MTU = 24 -IPV6_MTU_DISCOVER = 23 -IPV6_MULTICAST_HOPS = 18 -IPV6_MULTICAST_IF = 17 -IPV6_MULTICAST_LOOP = 19 -IPV6_RECVERR = 25 -IPV6_RECVPKTINFO = 49 -IPV6_ROUTER_ALERT = 22 -IPV6_RTHDR = 57 -IPV6_UNICAST_HOPS = 16 -IPV6_V6ONLY = 26 -IP_ADD_MEMBERSHIP = 35 -IP_ADD_SOURCE_MEMBERSHIP = 39 -IP_BIND_ADDRESS_NO_PORT = 24 -IP_BLOCK_SOURCE = 38 -IP_CHECKSUM = 23 -IP_DROP_MEMBERSHIP = 36 -IP_DROP_SOURCE_MEMBERSHIP = 40 -IP_FREEBIND = 15 -IP_HDRINCL = 3 -IP_IPSEC_POLICY = 16 -IP_MINTTL = 21 -IP_MSFILTER = 41 -IP_MTU = 14 -IP_MTU_DISCOVER = 10 -IP_MULTICAST_ALL = 49 -IP_MULTICAST_IF = 32 -IP_MULTICAST_LOOP = 34 -IP_MULTICAST_TTL = 33 -IP_NODEFRAG = 22 -IP_OPTIONS = 4 -IP_PASSSEC = 18 -IP_PKTINFO = 8 -IP_PKTOPTIONS = 9 -IP_PMTUDISC_DO = 2 -IP_PMTUDISC_DONT = 0 -IP_PMTUDISC_INTERFACE = 4 -IP_PMTUDISC_OMIT = 5 -IP_PMTUDISC_PROBE = 3 -IP_PMTUDISC_WANT = 1 -IP_RECVERR = 11 -IP_RECVOPTS = 6 -IP_RECVORIGDSTADDR = 20 -IP_RECVTOS = 13 -IP_RECVTTL = 12 -IP_RETOPTS = 7 -IP_ROUTER_ALERT = 5 -IP_TOS = 1 -IP_TRANSPARENT = 19 -IP_TTL = 2 -IP_UNBLOCK_SOURCE = 37 -L2CAP_CONNINFO = 2 -L2CAP_LM = 3 -L2CAP_LM_AUTH = 2 -L2CAP_LM_ENCRYPT = 4 -L2CAP_LM_FIPS = 64 -L2CAP_LM_MASTER = 1 -L2CAP_LM_RELIABLE = 16 -L2CAP_LM_SECURE = 32 -L2CAP_LM_TRUSTED = 8 -L2CAP_OPTIONS = 1 -MCAST_EXCLUDE = 0 -MCAST_INCLUDE = 1 MSG_BATCH = 262144 MSG_CMSG_CLOEXEC = 1073741824 MSG_CONFIRM = 2048 @@ -199,30 +25,8 @@ MSG_PROBE = 16 MSG_TRUNC = 32 MSG_WAITALL = 256 MSG_WAITFORONE = 65536 -NFC_LLCP_MIUX = 1 -NFC_LLCP_REMOTE_LTO = 3 -NFC_LLCP_REMOTE_MIU = 2 -NFC_LLCP_REMOTE_RW = 4 -NFC_LLCP_RW = 0 -NFC_PROTO_FELICA = 3 -NFC_PROTO_ISO14443 = 4 -NFC_PROTO_ISO14443_B = 6 -NFC_PROTO_ISO15693 = 7 -NFC_PROTO_JEWEL = 1 -NFC_PROTO_MIFARE = 2 -NFC_PROTO_NFC_DEP = 5 -NFC_SOCKPROTO_LLCP = 1 -NFC_SOCKPROTO_RAW = 0 -RFCOMM_CONNINFO = 2 -RFCOMM_LM = 3 -SCM_CREDENTIALS = 2 -SCM_RIGHTS = 1 -SCO_CONNINFO = 2 -SCO_OPTIONS = 1 SHUT_RD = 0 SHUT_WR = 1 -SIOCGSTAMP = 35078 -SIOCGSTAMPNS = 35079 SIOCINQ = 1074030207 SIOCOUTQ = 1074033779 SOCK_CLOEXEC = 524288 @@ -245,43 +49,7 @@ SOF_TIMESTAMPING_TX_ACK = 512 SOF_TIMESTAMPING_TX_HARDWARE = 1 SOF_TIMESTAMPING_TX_SCHED = 256 SOF_TIMESTAMPING_TX_SOFTWARE = 2 -SOL_AAL = 265 -SOL_ALG = 279 -SOL_ATALK = 258 -SOL_ATM = 264 -SOL_AX25 = 257 -SOL_BLUETOOTH = 274 -SOL_CAIF = 278 -SOL_DCCP = 269 -SOL_DECNET = 261 -SOL_ICMPV6 = 58 -SOL_IP = 0 -SOL_IPV6 = 41 -SOL_IPX = 256 -SOL_IRDA = 266 -SOL_IUCV = 277 -SOL_KCM = 281 -SOL_L2CAP = 6 -SOL_LLC = 268 -SOL_NETBEUI = 267 -SOL_NETLINK = 270 -SOL_NETROM = 259 -SOL_NFC = 280 -SOL_PACKET = 263 -SOL_PNPIPE = 275 -SOL_PPPOL2TP = 273 -SOL_RAW = 255 -SOL_RDS = 276 -SOL_RFCOMM = 18 -SOL_ROSE = 260 -SOL_RXRPC = 272 -SOL_SCO = 17 -SOL_SCTP = 132 SOL_SOCKET = 1 -SOL_TCP = 6 -SOL_TIPC = 271 -SOL_UDP = 17 -SOL_UDPLITE = 136 SO_ACCEPTCONN = 30 SO_ATTACH_BPF = 50 SO_ATTACH_FILTER = 26 @@ -327,21 +95,6 @@ SO_TIMESTAMPING = 37 SO_TIMESTAMPNS = 35 SO_TYPE = 3 SO_WIFI_STATUS = 41 -TCP_CORK = 3 -TCP_DEFER_ACCEPT = 9 -TCP_INFO = 11 -TCP_KEEPCNT = 6 -TCP_KEEPIDLE = 4 -TCP_KEEPINTVL = 5 -TCP_LINGER2 = 8 -TCP_MAXSEG = 2 -TCP_NODELAY = 1 -TCP_QUICKACK = 12 -TCP_SYNCNT = 7 -TCP_WINDOW_CLAMP = 10 -TIOCINQ = 1074030207 -TIOCOUTQ = 1074033779 -UDP_CORK = 1 __NR_accept = 330 __NR_accept4 = 344 __NR_bind = 327 diff --git a/sys/socket_unix.txt b/sys/socket_unix.txt new file mode 100644 index 000000000..b5eed9483 --- /dev/null +++ b/sys/socket_unix.txt @@ -0,0 +1,78 @@ +# Copyright 2017 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# AF_UNIX support. + +include <linux/socket.h> +include <linux/net.h> + +resource sock_unix[sock] + +socket$unix(domain const[AF_UNIX], type flags[unix_socket_type], proto const[0]) sock_unix +socketpair$unix(domain const[AF_UNIX], type flags[unix_socket_type], proto const[0], fds ptr[out, unix_pair]) +bind$unix(fd sock_unix, addr ptr[in, sockaddr_un], addrlen len[addr]) +connect$unix(fd sock_unix, addr ptr[in, sockaddr_un], addrlen len[addr]) +accept$unix(fd sock_unix, peer ptr[out, sockaddr_un, opt], peerlen ptr[inout, len[peer, int32]]) sock_unix +accept4$unix(fd sock_unix, peer ptr[out, sockaddr_un, opt], peerlen ptr[inout, len[peer, int32]], flags flags[accept_flags]) sock_unix + +sendto$unix(fd sock_unix, buf buffer[in], len len[buf], f flags[send_flags], addr ptr[in, sockaddr_un, opt], addrlen len[addr]) +sendmsg$unix(fd sock_unix, msg ptr[in, msghdr_un], f flags[send_flags]) +sendmmsg$unix(fd sock_unix, mmsg ptr[in, array[msghdr_un]], vlen len[mmsg], f flags[send_flags]) +recvfrom$unix(fd sock_unix, buf buffer[out], len len[buf], f flags[recv_flags], addr ptr[in, sockaddr_un, opt], addrlen len[addr]) +getsockname$unix(fd sock_unix, addr ptr[out, sockaddr_un], addrlen ptr[inout, len[addr, int32]]) +getpeername$unix(fd sock_unix, peer ptr[out, sockaddr_un], peerlen ptr[inout, len[peer, int32]]) + +unix_socket_type = SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET +unix_socket_family = AF_UNIX, AF_UNSPEC + +unix_pair { + fd0 sock_unix + fd1 sock_unix +} + +sockaddr_un [ + file sockaddr_un_file + abs sockaddr_un_abstract +] [varlen] + +sockaddr_un_file { + family flags[unix_socket_family, int16] + path filename +} [packed] + +sockaddr_un_abstract { + family flags[unix_socket_family, int16] + ind const[0, int8] + id proc[int32, 20000, 4] +} + +msghdr_un { + addr ptr[in, sockaddr_un] + addrlen len[addr, int32] + vec ptr[in, array[iovec_in]] + vlen len[vec, intptr] + ctrl ptr[in, array[cmsghdr_un], opt] + ctrllen len[ctrl, intptr] + f flags[send_flags, int32] +} + +cmsghdr_un [ + rights cmsghdr_un_rights + cred cmsghdr_un_cred +] [varlen] + +cmsghdr_un_rights { + len len[parent, intptr] + level const[SOL_SOCKET, int32] + type const[SCM_RIGHTS, int32] + fds array[fd] +} [align_ptr] + +cmsghdr_un_cred { + len len[parent, intptr] + level const[SOL_SOCKET, int32] + type const[SCM_CREDENTIALS, int32] + pid pid + uid uid + gid gid +} [align_ptr] diff --git a/sys/socket_unix_amd64.const b/sys/socket_unix_amd64.const new file mode 100644 index 000000000..d629748ca --- /dev/null +++ b/sys/socket_unix_amd64.const @@ -0,0 +1,21 @@ +# AUTOGENERATED FILE +AF_UNIX = 1 +AF_UNSPEC = 0 +SCM_CREDENTIALS = 2 +SCM_RIGHTS = 1 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SOCKET = 1 +__NR_accept = 43 +__NR_accept4 = 288 +__NR_bind = 49 +__NR_connect = 42 +__NR_getpeername = 52 +__NR_getsockname = 51 +__NR_recvfrom = 45 +__NR_sendmmsg = 307 +__NR_sendmsg = 46 +__NR_sendto = 44 +__NR_socket = 41 +__NR_socketpair = 53 diff --git a/sys/socket_unix_arm64.const b/sys/socket_unix_arm64.const new file mode 100644 index 000000000..fc9ca9bc9 --- /dev/null +++ b/sys/socket_unix_arm64.const @@ -0,0 +1,21 @@ +# AUTOGENERATED FILE +AF_UNIX = 1 +AF_UNSPEC = 0 +SCM_CREDENTIALS = 2 +SCM_RIGHTS = 1 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SOCKET = 1 +__NR_accept = 202 +__NR_accept4 = 242 +__NR_bind = 200 +__NR_connect = 203 +__NR_getpeername = 205 +__NR_getsockname = 204 +__NR_recvfrom = 207 +__NR_sendmmsg = 269 +__NR_sendmsg = 211 +__NR_sendto = 206 +__NR_socket = 198 +__NR_socketpair = 199 diff --git a/sys/socket_unix_ppc64le.const b/sys/socket_unix_ppc64le.const new file mode 100644 index 000000000..b8ec03296 --- /dev/null +++ b/sys/socket_unix_ppc64le.const @@ -0,0 +1,21 @@ +# AUTOGENERATED FILE +AF_UNIX = 1 +AF_UNSPEC = 0 +SCM_CREDENTIALS = 2 +SCM_RIGHTS = 1 +SOCK_DGRAM = 2 +SOCK_SEQPACKET = 5 +SOCK_STREAM = 1 +SOL_SOCKET = 1 +__NR_accept = 330 +__NR_accept4 = 344 +__NR_bind = 327 +__NR_connect = 328 +__NR_getpeername = 332 +__NR_getsockname = 331 +__NR_recvfrom = 337 +__NR_sendmmsg = 349 +__NR_sendmsg = 341 +__NR_sendto = 335 +__NR_socket = 326 +__NR_socketpair = 333 diff --git a/sys/sys.txt b/sys/sys.txt index 553b07590..702579a77 100644 --- a/sys/sys.txt +++ b/sys/sys.txt @@ -830,140 +830,6 @@ ucred { gid gid } -ip_mreq { - multi in_addr - addr in_addr -} - -ip_mreqn { - multi in_addr - addr in_addr - ifindex int32 -} - -ip_mreq_source { - multi in_addr - iface in_addr - source in_addr -} - -ip_msfilter { - multi in_addr - iface in_addr - fmode flags[ip_msfilter_mode, int32] - numsrc len[slist, int32] - slist array[in_addr] -} - -in_pktinfo { - ifindex int32 - dst in_addr - addr in_addr -} - -xfrm_filer { - info xfrm_userpolicy_info - tmpl xfrm_user_tmpl -} - -xfrm_userpolicy_info { - sel xfrm_selector - lft xfrm_lifetime_cfg - cur xfrm_lifetime_cur - prio int32 - index int32 - dir int8 - action int8 - flags int8 - share int8 -} - -xfrm_user_tmpl { - id xfrm_id - fam int16 - saddr xfrm_in_addr - reqid int32 - mode int8 - share int8 - opt int8 - aalgod int32 - ealgos int32 - calgos int32 -} - -xfrm_selector { - daddr xfrm_in_addr - saddr xfrm_in_addr - dport proc[int16be, 20000, 4] - dmask int16 - sport proc[int16be, 20000, 4] - smask int16 - fam int16 - len_d int8 - len_s int8 - proto int8 - ifindex int32 - user int32 -} - -xfrm_lifetime_cfg { - x0 int64 - x1 int64 - x2 int64 - x3 int64 - x4 int64 - x5 int64 - x6 int64 - x7 int64 -} - -xfrm_lifetime_cur { - bytes int64 - packets int64 - atime int64 - utime int64 -} - -xfrm_id { - daddr xfrm_in_addr - spi int32 - proto int8 -} - -xfrm_in_addr [ - in in_addr - in6 in6_addr -] - -in_addr [ -# 0.0.0.0 - empty const[0x00000000, int32be] -# 127.0.0.1 - loopback const[0x7f000001, int32be] -# 255.255.255.255 - broadcast const[0xffffffff, int32be] -] - -in6_addr_empty { - a0 const[0, int64be] - a1 const[0, int64be] -} - -in6_addr_loopback { - a0 const[0, int64be] - a1 const[1, int64be] -} - -in6_addr [ - empty in6_addr_empty - loopback in6_addr_loopback -] - -ipv6_mreq { - multi in6_addr - ifindex int32 -} - fiemap { start int64 len int64 diff --git a/sys/test_amd64.const b/sys/test_amd64.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/test_amd64.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/test_arm64.const b/sys/test_arm64.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/test_arm64.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/test_ppc64le.const b/sys/test_ppc64le.const new file mode 100644 index 000000000..c9328ca7e --- /dev/null +++ b/sys/test_ppc64le.const @@ -0,0 +1 @@ +# AUTOGENERATED FILE diff --git a/sys/vnet_amd64.const b/sys/vnet_amd64.const index a9ebe9aad..fe6731c78 100644 --- a/sys/vnet_amd64.const +++ b/sys/vnet_amd64.const @@ -66,8 +66,6 @@ ETH_P_X25 = 2053 ICMPV6_ADDR_UNREACH = 3 ICMPV6_ADM_PROHIBITED = 1 ICMPV6_DEST_UNREACH = 1 -ICMPV6_DHAAD_REPLY = 145 -ICMPV6_DHAAD_REQUEST = 144 ICMPV6_ECHO_REPLY = 129 ICMPV6_ECHO_REQUEST = 128 ICMPV6_EXC_FRAGTIME = 1 @@ -76,9 +74,6 @@ ICMPV6_HDR_FIELD = 0 ICMPV6_MGM_QUERY = 130 ICMPV6_MGM_REDUCTION = 132 ICMPV6_MGM_REPORT = 131 -ICMPV6_MLD2_REPORT = 143 -ICMPV6_MOBILE_PREFIX_ADV = 147 -ICMPV6_MOBILE_PREFIX_SOL = 146 ICMPV6_NI_QUERY = 139 ICMPV6_NI_REPLY = 140 ICMPV6_NOROUTE = 0 diff --git a/sys/vnet_arm64.const b/sys/vnet_arm64.const index a9ebe9aad..fe6731c78 100644 --- a/sys/vnet_arm64.const +++ b/sys/vnet_arm64.const @@ -66,8 +66,6 @@ ETH_P_X25 = 2053 ICMPV6_ADDR_UNREACH = 3 ICMPV6_ADM_PROHIBITED = 1 ICMPV6_DEST_UNREACH = 1 -ICMPV6_DHAAD_REPLY = 145 -ICMPV6_DHAAD_REQUEST = 144 ICMPV6_ECHO_REPLY = 129 ICMPV6_ECHO_REQUEST = 128 ICMPV6_EXC_FRAGTIME = 1 @@ -76,9 +74,6 @@ ICMPV6_HDR_FIELD = 0 ICMPV6_MGM_QUERY = 130 ICMPV6_MGM_REDUCTION = 132 ICMPV6_MGM_REPORT = 131 -ICMPV6_MLD2_REPORT = 143 -ICMPV6_MOBILE_PREFIX_ADV = 147 -ICMPV6_MOBILE_PREFIX_SOL = 146 ICMPV6_NI_QUERY = 139 ICMPV6_NI_REPLY = 140 ICMPV6_NOROUTE = 0 diff --git a/sys/vnet_ppc64le.const b/sys/vnet_ppc64le.const index a9ebe9aad..fe6731c78 100644 --- a/sys/vnet_ppc64le.const +++ b/sys/vnet_ppc64le.const @@ -66,8 +66,6 @@ ETH_P_X25 = 2053 ICMPV6_ADDR_UNREACH = 3 ICMPV6_ADM_PROHIBITED = 1 ICMPV6_DEST_UNREACH = 1 -ICMPV6_DHAAD_REPLY = 145 -ICMPV6_DHAAD_REQUEST = 144 ICMPV6_ECHO_REPLY = 129 ICMPV6_ECHO_REQUEST = 128 ICMPV6_EXC_FRAGTIME = 1 @@ -76,9 +74,6 @@ ICMPV6_HDR_FIELD = 0 ICMPV6_MGM_QUERY = 130 ICMPV6_MGM_REDUCTION = 132 ICMPV6_MGM_REPORT = 131 -ICMPV6_MLD2_REPORT = 143 -ICMPV6_MOBILE_PREFIX_ADV = 147 -ICMPV6_MOBILE_PREFIX_SOL = 146 ICMPV6_NI_QUERY = 139 ICMPV6_NI_REPLY = 140 ICMPV6_NOROUTE = 0 |
