diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-11-19 17:16:36 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-11-19 17:16:36 +0100 |
| commit | 4784f4f6f50d7ddf958ddbb717bb2a0cb3e397a9 (patch) | |
| tree | e3f8006173e967ab1d3d0a1cc8f276a15d59074d /sys/sys.txt | |
| parent | 93f8cc38aa01d8ebfbfed4f111e7a0a48dc89cac (diff) | |
add fuse support
Diffstat (limited to 'sys/sys.txt')
| -rw-r--r-- | sys/sys.txt | 146 |
1 files changed, 146 insertions, 0 deletions
diff --git a/sys/sys.txt b/sys/sys.txt index 6010c6c5f..e2c53329a 100644 --- a/sys/sys.txt +++ b/sys/sys.txt @@ -65,6 +65,7 @@ include <linux/fs.h> include <linux/fiemap.h> include <linux/kd.h> include <linux/vt.h> +include <linux/fuse.h> include <asm/prctl.h> @@ -2172,3 +2173,148 @@ drm_set_version { drm_map_type = _DRM_FRAME_BUFFER, _DRM_REGISTERS, _DRM_SHM, _DRM_AGP, _DRM_SCATTER_GATHER, _DRM_CONSISTENT drm_map_flags = _DRM_RESTRICTED, _DRM_READ_ONLY, _DRM_LOCKED, _DRM_KERNEL, _DRM_WRITE_COMBINING, _DRM_CONTAINS_LOCK, _DRM_REMOVABLE, _DRM_DRIVER + + + + +# FUSE support + +syz_fuse_mount(target filename, mode flags[fuse_mode], uid uid, gid gid, maxread intptr, flags flags[mount_flags]) fd[fuse] +syz_fuseblk_mount(target filename, blkdev filename, mode flags[fuse_mode], uid uid, gid gid, maxread intptr, blksize intptr, flags flags[mount_flags]) fd[fuse] +ioctl$FUSE_DEV_IOC_CLONE(fd fd[fuse], cmd const[FUSE_DEV_IOC_CLONE], arg ptr[in, fd[fuse]]) +write$fuse_init(fd fd[fuse], arg ptr[in, fuse_init_out], len len[arg]) +write$fuse_interrupt(fd fd[fuse], arg ptr[in, fuse_interrupt_out], len len[arg]) +write$fuse_bmap(fd fd[fuse], arg ptr[in, fuse_bmap_out], len len[arg]) +write$fuse_ioctl(fd fd[fuse], arg ptr[in, fuse_ioctl_out], len len[arg]) +write$fuse_poll(fd fd[fuse], arg ptr[in, fuse_poll_out], len len[arg]) +write$fuse_notify_poll_wakeup(fd fd[fuse], arg ptr[in, fuse_notify_poll_wakeup_out], len len[arg]) +write$fuse_notify_inval_inode(fd fd[fuse], arg ptr[in, fuse_notify_inval_inode_out], len len[arg]) +write$fuse_notify_inval_entry(fd fd[fuse], arg ptr[in, fuse_notify_inval_entry_out], len len[arg]) +write$fuse_notify_delete(fd fd[fuse], arg ptr[in, fuse_notify_delete_out], len len[arg]) +write$fuse_notify_store(fd fd[fuse], arg ptr[in, fuse_notify_store_out], len len[arg]) +write$fuse_notify_retrieve(fd fd[fuse], arg ptr[in, fuse_notify_retrieve_out], len len[arg]) + +# 1 stands for default_permissions, 2 - allow_other +fuse_mode = 1, 2, S_IFREG, S_IFCHR, S_IFBLK, S_IFIFO, S_IFSOCK, S_IFLNK, S_IFDIR + +define FUSE_DEV_IOC_CLONE _IOR(229, 0, uint32_t) + +fuse_init_out { + len len[parent, int32] + err int32 + unique int64 + + maj int32 + min int32 + readah int32 + flags int32 + backg int16 + congest int16 + maxwr int32 + timegr int32 + unused0 const[0, int32] + unused1 const[0, int32] + unused2 const[0, int32] + unused3 const[0, int32] + unused4 const[0, int32] + unused5 const[0, int32] + unused6 const[0, int32] + unused7 const[0, int32] + unused8 const[0, int32] +} + +fuse_interrupt_out { + len len[parent, int32] + err int32 + unique int64 +} + +fuse_bmap_out { + len len[parent, int32] + err int32 + unique int64 + + block int64 +} + +fuse_ioctl_out { + len len[parent, int32] + err int32 + unique int64 + + res int32 + flags int32 + iniovs int32 + outiovs int32 +} + +fuse_poll_out { + len len[parent, int32] + err int32 + unique int64 + + revents int32 + pad int32 +} + +fuse_notify_poll_wakeup_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + kh int16 +} + +fuse_notify_inval_inode_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + ino int64 + off int64 + len int16 +} + +fuse_notify_inval_entry_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + parent int64 + namelen int32 + pad const[0, int32] +} + +fuse_notify_delete_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + parent int64 + child int64 + namelen int32 + pad const[0, int32] +} + +fuse_notify_store_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + nodeid int64 + off int64 + size int32 + pad const[0, int32] +} + +fuse_notify_retrieve_out { + len len[parent, int32] + err int32 + unique const[0, int64] + + unique int64 + nodeid int64 + off int64 + size int32 + pad const[0, int32] +} |
