aboutsummaryrefslogtreecommitdiffstats
path: root/sys/socket_inet_dccp.txt
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2017-02-13 14:38:19 +0100
committerAndrey Konovalov <andreyknvl@google.com>2017-02-13 14:38:19 +0100
commit53e5ebba71240aa17f16f705aea37d7082bb767f (patch)
tree8bc958e7485c1ad43d4ed5eb2829727b3fe2c079 /sys/socket_inet_dccp.txt
parent2a4a49e7f31f96a86d53b6b65fd8316b29dbd252 (diff)
sys: add dccp socket & packet descriptions
Diffstat (limited to 'sys/socket_inet_dccp.txt')
-rw-r--r--sys/socket_inet_dccp.txt42
1 files changed, 42 insertions, 0 deletions
diff --git a/sys/socket_inet_dccp.txt b/sys/socket_inet_dccp.txt
new file mode 100644
index 000000000..b392d8b44
--- /dev/null
+++ b/sys/socket_inet_dccp.txt
@@ -0,0 +1,42 @@
+# 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: DCCP support
+
+include <linux/dccp.h>
+
+resource sock_dccp[sock_in]
+
+dccp_pair {
+ f0 sock_dccp
+ f1 sock_dccp
+}
+
+socket$dccp(domain const[AF_INET], type const[SOCK_DCCP], proto const[0]) sock_dccp
+socketpair$dccp(domain const[AF_INET], type const[SOCK_DCCP], proto const[0], fds ptr[out, dccp_pair])
+
+resource sock_dccp6[sock_in6]
+
+dccp6_pair {
+ f0 sock_dccp6
+ f1 sock_dccp6
+}
+
+socket$dccp6(domain const[AF_INET6], type const[SOCK_DCCP], proto const[0]) sock_dccp6
+socketpair$dccp6(domain const[AF_INET6], type const[SOCK_DCCP], proto const[0], fds ptr[out, dccp6_pair])
+
+# Generic DCCP socket options
+
+dccp_option_types_int = DCCP_SOCKOPT_PACKET_SIZE, DCCP_SOCKOPT_CHANGE_L, DCCP_SOCKOPT_CHANGE_R, DCCP_SOCKOPT_GET_CUR_MPS, DCCP_SOCKOPT_SERVER_TIMEWAIT, DCCP_SOCKOPT_SEND_CSCOV, DCCP_SOCKOPT_RECV_CSCOV, DCCP_SOCKOPT_QPOLICY_ID, DCCP_SOCKOPT_QPOLICY_TXQLEN
+
+dccp_option_types_buf = DCCP_SOCKOPT_SERVICE, DCCP_SOCKOPT_AVAILABLE_CCIDS, DCCP_SOCKOPT_CCID, DCCP_SOCKOPT_TX_CCID, DCCP_SOCKOPT_RX_CCID, DCCP_SOCKOPT_CCID_RX_INFO, DCCP_SOCKOPT_CCID_TX_INFO
+
+getsockopt$dccp_int(fd sock_dccp, level const[IPPROTO_DCCP], optname flags[dccp_option_types_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]])
+setsockopt$dccp_int(fd sock_dccp, level const[IPPROTO_DCCP], optname flags[dccp_option_types_int], optval ptr[in, int32], optlen len[optval])
+getsockopt$dccp6_int(fd sock_dccp6, level const[IPPROTO_DCCP], optname flags[dccp_option_types_int], optval ptr[out, int32], optlen ptr[inout, len[optval, int32]])
+setsockopt$dccp6_int(fd sock_dccp6, level const[IPPROTO_DCCP], optname flags[dccp_option_types_int], optval ptr[in, int32], optlen len[optval])
+
+getsockopt$dccp_buf(fd sock_dccp, level const[IPPROTO_DCCP], optname flags[dccp_option_types_buf], optval buffer[out], optlen ptr[inout, len[optval, int32]])
+setsockopt$dccp_buf(fd sock_dccp, level const[IPPROTO_DCCP], optname flags[dccp_option_types_buf], optval buffer[in], optlen len[optval])
+getsockopt$dccp6_buf(fd sock_dccp6, level const[IPPROTO_DCCP], optname flags[dccp_option_types_buf], optval buffer[out], optlen ptr[inout, len[optval, int32]])
+setsockopt$dccp6_buf(fd sock_dccp6, level const[IPPROTO_DCCP], optname flags[dccp_option_types_buf], optval buffer[in], optlen len[optval])