aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/socket_qipcrtr.txt
diff options
context:
space:
mode:
authorNecip Fazil Yildiran <necip@google.com>2020-06-23 08:53:15 +0300
committerDmitry Vyukov <dvyukov@google.com>2020-06-23 10:34:37 +0200
commit0c8fbbfce1e43634a1c3d71a173e6944e86da76b (patch)
tree26e6d8f8ce83f8a974629b182a98bbda3e05f873 /sys/linux/socket_qipcrtr.txt
parent125d86d10169640c73e42208190f624d79a3bde7 (diff)
sys/linux: add descriptions for qrtr socket
Added descriptions to test Qualcomm's IPC router protocol for sockets. Update #533.
Diffstat (limited to 'sys/linux/socket_qipcrtr.txt')
-rw-r--r--sys/linux/socket_qipcrtr.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/sys/linux/socket_qipcrtr.txt b/sys/linux/socket_qipcrtr.txt
new file mode 100644
index 000000000..cbbd5b559
--- /dev/null
+++ b/sys/linux/socket_qipcrtr.txt
@@ -0,0 +1,32 @@
+# Copyright 2020 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 <asm/ioctls.h>
+include <linux/qrtr.h>
+
+# QIPCRTR sockets
+
+resource sock_qrtr[sock]
+
+sockaddr_qrtr {
+ sq_family const[AF_QIPCRTR, int16]
+ sq_node int32
+ sq_port int32
+}
+
+socket$qrtr(domain const[AF_QIPCRTR], type const[SOCK_DGRAM], proto const[0]) sock_qrtr
+
+bind$qrtr(fd sock_qrtr, addr ptr[in, sockaddr_qrtr], addrlen len[addr])
+connect$qrtr(fd sock_qrtr, addr ptr[in, sockaddr_qrtr], addrlen len[addr])
+
+getsockname$qrtr(fd sock_qrtr, addr ptr[out, sockaddr_qrtr], addrlen ptr[inout, len[addr, int32]])
+getpeername$qrtr(fd sock_qrtr, peer ptr[out, sockaddr_qrtr], peerlen ptr[inout, len[peer, int32]])
+
+# ioctls
+ioctl$sock_qrtr_TIOCOUTQ(fd sock_qrtr, cmd const[TIOCOUTQ], arg ptr[out, int64])
+ioctl$sock_qrtr_TIOCINQ(fd sock_qrtr, cmd const[TIOCINQ], arg ptr[out, int64])
+ioctl$sock_qrtr_SIOCGIFADDR(fd sock_qrtr, cmd const[SIOCGIFADDR], arg ptr[inout, ifreq_t[sockaddr_qrtr]])
+
+# TODO: sendmsg$qrtr, recvmsg$qrtr, msghdr_qrtr