aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/dev_ppp.txt
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2019-02-01 01:08:17 +0100
committerAndrey Konovalov <andreyknvl@gmail.com>2019-02-01 14:40:17 +0100
commit9f528bbcc8a3d94c9be27a0eecc12022d4b3bfaa (patch)
tree59bcdb899b42ba9d793d5bbac6cf58a4a9132143 /sys/linux/dev_ppp.txt
parentaa53be276dc84aa8b3825b3416542447ff82b41a (diff)
sys/linux: rename dev descriptions files
Prefix file names of descriptions of /dev/* files with dev_. And give some of them more appropriate names.
Diffstat (limited to 'sys/linux/dev_ppp.txt')
-rw-r--r--sys/linux/dev_ppp.txt44
1 files changed, 44 insertions, 0 deletions
diff --git a/sys/linux/dev_ppp.txt b/sys/linux/dev_ppp.txt
new file mode 100644
index 000000000..20ad25261
--- /dev/null
+++ b/sys/linux/dev_ppp.txt
@@ -0,0 +1,44 @@
+# 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/ioctl.h>
+include <uapi/linux/filter.h>
+include <uapi/linux/ppp-ioctl.h>
+include <uapi/linux/ppp_defs.h>
+
+resource fd_ppp[fd]
+# TODO: what is this?
+type ppp_unit int32[0:4]
+
+openat$ppp(fd const[AT_FDCWD], file ptr[in, string["/dev/ppp"]], flags flags[open_flags], mode const[0]) fd_ppp
+write$ppp(fd fd_ppp, data ptr[in, ppp_packet], size bytesize[data])
+
+ioctl$PPPIOCNEWUNIT(fd fd_ppp, cmd const[PPPIOCNEWUNIT], arg ptr[in, ppp_unit])
+ioctl$PPPIOCATTACH(fd fd_ppp, cmd const[PPPIOCATTACH], arg ptr[in, ppp_unit])
+ioctl$PPPIOCATTCHAN(fd fd_ppp, cmd const[PPPIOCATTCHAN], arg ptr[in, ppp_unit])
+ioctl$PPPIOCCONNECT(fd fd_ppp, cmd const[PPPIOCCONNECT], arg ptr[in, ppp_unit])
+ioctl$PPPIOCDISCONN(fd fd_ppp, cmd const[PPPIOCDISCONN])
+ioctl$PPPIOCSCOMPRESS(fd fd_ppp, cmd const[PPPIOCSCOMPRESS])
+ioctl$PPPIOCGUNIT(fd fd_ppp, cmd const[PPPIOCGUNIT], arg ptr[out, int32])
+ioctl$PPPIOCSDEBUG(fd fd_ppp, cmd const[PPPIOCSDEBUG], arg ptr[in, int32])
+ioctl$PPPIOCGDEBUG(fd fd_ppp, cmd const[PPPIOCGDEBUG], arg ptr[out, int32])
+ioctl$PPPIOCGIDLE(fd fd_ppp, cmd const[PPPIOCGIDLE], arg ptr[out, array[int64, 2]])
+ioctl$PPPIOCSMAXCID(fd fd_ppp, cmd const[PPPIOCSMAXCID], arg ptr[in, int32])
+ioctl$PPPIOCGNPMODE(fd fd_ppp, cmd const[PPPIOCGNPMODE], arg ptr[in, npioctl])
+ioctl$PPPIOCSNPMODE(fd fd_ppp, cmd const[PPPIOCSNPMODE], arg ptr[in, npioctl])
+ioctl$PPPIOCSPASS(fd fd_ppp, cmd const[PPPIOCSPASS], arg ptr[in, sock_fprog])
+ioctl$PPPIOCSACTIVE(fd fd_ppp, cmd const[PPPIOCSACTIVE], arg ptr[in, sock_fprog])
+ioctl$PPPIOCSMRRU(fd fd_ppp, cmd const[PPPIOCSMRRU], arg ptr[in, int32])
+
+# NEED: these ioctl's are also defined for sock_pppox. We need multiple inheritance here (#322).
+ioctl$PPPIOCSMRU1(fd fd_ppp, cmd const[PPPIOCSMRU], arg ptr[in, int32])
+ioctl$PPPIOCSFLAGS1(fd fd_ppp, cmd const[PPPIOCSFLAGS], arg ptr[in, flags[ppp_flags, int32]])
+ioctl$PPPIOCGFLAGS1(fd fd_ppp, cmd const[PPPIOCGFLAGS], arg ptr[out, int32])
+
+ppp_proto = PPP_IP, PPP_AT, PPP_IPX, PPP_VJC_COMP, PPP_VJC_UNCOMP, PPP_MP, PPP_IPV6, PPP_COMPFRAG, PPP_COMP, PPP_MPLS_UC, PPP_MPLS_MC, PPP_IPCP, PPP_ATCP, PPP_IPXCP, PPP_IPV6CP, PPP_CCPFRAG, PPP_CCP, PPP_MPLSCP, PPP_LCP, PPP_PAP, PPP_LQR, PPP_CHAP, PPP_CBCP
+NPmode = NPMODE_PASS, NPMODE_DROP, NPMODE_ERROR, NPMODE_QUEUE
+
+npioctl {
+ protocol flags[ppp_proto, int32]
+ mode flags[NPmode, int32]
+}