aboutsummaryrefslogtreecommitdiffstats
path: root/sys/fuchsia/guest.txt
blob: d29bc76a1a4b3de53d54754eecf773dc9421dc5f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# Copyright 2022 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.

# See https://cs.opensource.google/fuchsia/fuchsia/+/main:zircon/vdso/guest.fidl

include <zircon/syscalls.h>

resource zx_guest[zx_handle]

# The documentation does not mention any values for `options`, so we could
# express it as `const[0]`, but it might be good to test that `options`
# continues to mean nothing.
zx_guest_create(handle zx_resource, options int32, guest ptr[out, zx_guest], vmar ptr[out, zx_vmar])

zx_guest_set_trap(handle zx_guest, kind int32, vaddr intptr, size int64, port_handle zx_port, key int64)

type int64p int64[0:18446744073709551615, 4096]
type intptrp intptr[0:18446744073709551615, 4096]
zx_guest_set_trap$ZX_GUEST_TRAP_BELL(handle const[ZX_GUEST_TRAP_BELL], kind int32, vaddr intptrp, size int64p, port_handle zx_port, key const[ZX_PKT_TYPE_GUEST_BELL])
zx_guest_set_trap$ZX_GUEST_TRAP_MEM(handle const[ZX_GUEST_TRAP_MEM], kind int32, vaddr intptrp, size int64p, port_handle const[ZX_HANDLE_INVALID], key const[ZX_PKT_TYPE_GUEST_MEM])

zx_guest_set_trap$ZX_GUEST_TRAP_IO(handle const[ZX_GUEST_TRAP_IO], kind int32, vaddr intptr, size int64, port_handle const[ZX_HANDLE_INVALID], key const[ZX_PKT_TYPE_GUEST_IO])