• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 syzkaller project authors. All rights reserved.
2# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
3
4include <linux/net.h>
5include <linux/kcm.h>
6include <linux/sockios.h>
7
8resource sock_kcm[sock]
9
10socket$kcm(domain const[AF_KCM], type flags[kcm_socket_type], proto const[KCMPROTO_CONNECTED]) sock_kcm
11setsockopt$kcm_KCM_RECV_DISABLE(fd sock_kcm, level const[SOL_KCM], opt const[KCM_RECV_DISABLE], val ptr[in, int32], len len[val])
12getsockopt$kcm_KCM_RECV_DISABLE(fd sock_kcm, level const[SOL_KCM], opt const[KCM_RECV_DISABLE], val ptr[out, int32], len len[val])
13sendmsg$kcm(fd sock_kcm, msg ptr[in, send_msghdr], f flags[send_flags])
14recvmsg$kcm(fd sock_kcm, msg ptr[in, recv_msghdr], f flags[recv_flags])
15
16ioctl$sock_kcm_SIOCKCMATTACH(fd sock_kcm, cmd const[SIOCKCMATTACH], arg ptr[in, kcm_attach])
17ioctl$sock_kcm_SIOCKCMUNATTACH(fd sock_kcm, cmd const[SIOCKCMUNATTACH], arg ptr[in, kcm_unattach])
18ioctl$sock_kcm_SIOCKCMCLONE(fd sock_kcm, cmd const[SIOCKCMCLONE], arg ptr[inout, kcm_clone])
19
20kcm_socket_type = SOCK_DGRAM, SOCK_SEQPACKET
21
22kcm_attach {
23	fd	sock
24	bpf_fd	fd_bpf_prog
25}
26
27kcm_unattach {
28	fd	sock
29}
30
31kcm_clone {
32	fd	sock
33}
34