From a961943f0246ba8ca0ef00b3f990617d35a6d0c1 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 24 Dec 2018 18:35:21 +0100 Subject: sys/linux: add basic AF_CAIF descriptions --- sys/linux/socket_caif.txt | 51 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 sys/linux/socket_caif.txt (limited to 'sys/linux/socket_caif.txt') 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 +include +include + +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 +} -- cgit mrf-deployment