aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/socket_caif.txt
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-12-24 18:35:21 +0100
committerDmitry Vyukov <dvyukov@google.com>2018-12-24 18:56:07 +0100
commita961943f0246ba8ca0ef00b3f990617d35a6d0c1 (patch)
tree146ccd31862ce3009e4cc938ac10be8bd491f47c /sys/linux/socket_caif.txt
parent57541e29d9d7fba916a77292d80e8f35a132bcb4 (diff)
sys/linux: add basic AF_CAIF descriptions
Diffstat (limited to 'sys/linux/socket_caif.txt')
-rw-r--r--sys/linux/socket_caif.txt51
1 files changed, 51 insertions, 0 deletions
diff --git a/sys/linux/socket_caif.txt b/sys/linux/socket_caif.txt
new file mode 100644
index 000000000..f867b29fc
--- /dev/null
+++ b/sys/linux/socket_caif.txt
@@ -0,0 +1,51 @@
+# Copyright 2018 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 <uapi/linux/caif/caif_socket.h>
+
+resource sock_caif[sock]
+
+socket$caif_seqpacket(domain const[AF_CAIF], type const[SOCK_SEQPACKET], proto int32[CAIFPROTO_AT:CAIFPROTO_DEBUG]) sock_caif
+socket$caif_stream(domain const[AF_CAIF], type const[SOCK_STREAM], proto int32[CAIFPROTO_AT:CAIFPROTO_DEBUG]) sock_caif
+connect$caif(fd sock_caif, addr ptr[in, sockaddr_caif], addrlen len[addr])
+setsockopt$CAIFSO_LINK_SELECT(fd sock_caif, level const[SOL_CAIF], opt const[CAIFSO_LINK_SELECT], arg ptr[in, int32], arglen len[arg])
+setsockopt$CAIFSO_REQ_PARAM(fd sock_caif, level const[SOL_CAIF], opt const[CAIFSO_REQ_PARAM], arg ptr[in, array[int8, 0:256]], arglen len[arg])
+
+sockaddr_caif [
+ at sockaddr_caif_at
+ util sockaddr_caif_util
+ dgm sockaddr_caif_dgm
+ rfm sockaddr_caif_rfm
+ dbg sockaddr_caif_dbg
+]
+
+sockaddr_caif_at {
+ family const[AF_CAIF, int16]
+ type const[CAIF_ATTYPE_PLAIN, int8]
+}
+
+sockaddr_caif_util {
+ family const[AF_CAIF, int16]
+# TODO: what is caif service?
+ service array[int8, 16]
+}
+
+sockaddr_caif_dgm {
+ family const[AF_CAIF, int16]
+ connection_id int32
+ nsapi int8
+}
+
+sockaddr_caif_rfm {
+ family const[AF_CAIF, int16]
+ connection_id int32
+ volume array[int8, 16]
+}
+
+sockaddr_caif_dbg {
+ family const[AF_CAIF, int16]
+ type int8
+ service int8
+}