diff options
| author | Dokyung Song <dokyungs@google.com> | 2018-08-27 17:48:08 -0700 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2018-08-29 19:08:11 -0700 |
| commit | 99c7e4ecfa8ec1fd402d22caea619c5df72ef169 (patch) | |
| tree | ff7576a0e39f36279441eb0648ef1757a989a405 /executor/syscalls.h | |
| parent | ec887defafc3ae627cd2779324cfd51e23952fe1 (diff) | |
sys/fuchsia: describe method response types & handles; add support for union
* create a response handle structure for each FIDL method
* generate zx_channel_write for requests having no response
* generate zx_channel_read for events (no request but just response)
* translate FIDL union types to syzkaller union types
(see fuchsia_io_ObjectInfoHandles)
Diffstat (limited to 'executor/syscalls.h')
| -rw-r--r-- | executor/syscalls.h | 68 |
1 files changed, 34 insertions, 34 deletions
diff --git a/executor/syscalls.h b/executor/syscalls.h index dcd597ec4..e4023386c 100644 --- a/executor/syscalls.h +++ b/executor/syscalls.h @@ -558,24 +558,18 @@ const call_t syscalls[] = { {"writev", 0, (syscall_t)writev}, {"zx_cache_flush", 0, (syscall_t)zx_cache_flush}, {"zx_channel_call", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryGetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryGetToken", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryIoctl", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryLink", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryOnOpen", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryReadDirents", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryRename", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryRewind", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectorySetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectorySync", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryUnlink", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileGetAttr", 0, (syscall_t)zx_channel_call}, @@ -583,7 +577,6 @@ const call_t syscalls[] = { {"zx_channel_call$fuchsia_io_FileGetVmo", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileGetVmoAt", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileIoctl", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileOnOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileRead", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileReadAt", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileSeek", 0, (syscall_t)zx_channel_call}, @@ -593,24 +586,14 @@ const call_t syscalls[] = { {"zx_channel_call$fuchsia_io_FileTruncate", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileWrite", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileWriteAt", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeGetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeIoctl", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeOnOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeSetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeSync", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_ObjectClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_ObjectDescribe", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectOnOpen", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddArgs", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddEnvirons", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddHandles", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddNames", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_process_LauncherCreateWithoutStarting", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_process_LauncherLaunch", 0, (syscall_t)zx_channel_call}, {"zx_channel_create", 0, (syscall_t)zx_channel_create}, @@ -620,8 +603,25 @@ const call_t syscalls[] = { {"zx_channel_create$fuchsia_io_Object", 0, (syscall_t)zx_channel_create}, {"zx_channel_create$fuchsia_process_Launcher", 0, (syscall_t)zx_channel_create}, {"zx_channel_read", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_DirectoryOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_FileOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_NodeOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_ObjectOnOpen", 0, (syscall_t)zx_channel_read}, {"zx_channel_read_etc", 0, (syscall_t)zx_channel_read_etc}, {"zx_channel_write", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryOpen", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_FileBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_FileClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_NodeBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_NodeClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_ObjectBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_ObjectClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddArgs", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddEnvirons", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddHandles", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddNames", 0, (syscall_t)zx_channel_write}, {"zx_clock_get", 0, (syscall_t)zx_clock_get}, {"zx_clock_get_monotonic", 0, (syscall_t)zx_clock_get_monotonic}, {"zx_clock_get_new", 0, (syscall_t)zx_clock_get_new}, @@ -805,24 +805,18 @@ const call_t syscalls[] = { {"writev", 0, (syscall_t)writev}, {"zx_cache_flush", 0, (syscall_t)zx_cache_flush}, {"zx_channel_call", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryGetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryGetToken", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryIoctl", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryLink", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryOnOpen", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_DirectoryOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryReadDirents", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryRename", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryRewind", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectorySetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectorySync", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_DirectoryUnlink", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileGetAttr", 0, (syscall_t)zx_channel_call}, @@ -830,7 +824,6 @@ const call_t syscalls[] = { {"zx_channel_call$fuchsia_io_FileGetVmo", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileGetVmoAt", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileIoctl", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_FileOnOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileRead", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileReadAt", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileSeek", 0, (syscall_t)zx_channel_call}, @@ -840,24 +833,14 @@ const call_t syscalls[] = { {"zx_channel_call$fuchsia_io_FileTruncate", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileWrite", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_FileWriteAt", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeDescribe", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeGetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeIoctl", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_NodeOnOpen", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeSetAttr", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_NodeSync", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectBind", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectClone", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_ObjectClose", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_io_ObjectDescribe", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_io_ObjectOnOpen", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddArgs", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddEnvirons", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddHandles", 0, (syscall_t)zx_channel_call}, - {"zx_channel_call$fuchsia_process_LauncherAddNames", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_process_LauncherCreateWithoutStarting", 0, (syscall_t)zx_channel_call}, {"zx_channel_call$fuchsia_process_LauncherLaunch", 0, (syscall_t)zx_channel_call}, {"zx_channel_create", 0, (syscall_t)zx_channel_create}, @@ -867,8 +850,25 @@ const call_t syscalls[] = { {"zx_channel_create$fuchsia_io_Object", 0, (syscall_t)zx_channel_create}, {"zx_channel_create$fuchsia_process_Launcher", 0, (syscall_t)zx_channel_create}, {"zx_channel_read", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_DirectoryOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_FileOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_NodeOnOpen", 0, (syscall_t)zx_channel_read}, + {"zx_channel_read$fuchsia_io_ObjectOnOpen", 0, (syscall_t)zx_channel_read}, {"zx_channel_read_etc", 0, (syscall_t)zx_channel_read_etc}, {"zx_channel_write", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_DirectoryOpen", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_FileBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_FileClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_NodeBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_NodeClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_ObjectBind", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_io_ObjectClone", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddArgs", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddEnvirons", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddHandles", 0, (syscall_t)zx_channel_write}, + {"zx_channel_write$fuchsia_process_LauncherAddNames", 0, (syscall_t)zx_channel_write}, {"zx_clock_get", 0, (syscall_t)zx_clock_get}, {"zx_clock_get_monotonic", 0, (syscall_t)zx_clock_get_monotonic}, {"zx_clock_get_new", 0, (syscall_t)zx_clock_get_new}, |
