blob: a01458cd9ad544d1ce9e0b05ec3f3474560bf116 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library zx;
using mutable_vector_void = vector<byte>;
[Transport="Syscall"]
protocol Kwrap {
// Simple out ptr.
SimpleCase() -> (time time);
MultipleInHandles(vector<handle> handles) -> (status status);
// vdsocall excluded.
[vdsocall]
TicksGet() -> (ticks ticks);
// noreturn handled properly.
[noreturn]
ANoRetFunc();
// |buffer| treated as inout parameter.
InoutArgs(handle<vmo> handle,
uint32 op,
uint64 offset,
uint64 size,
mutable_vector_void buffer) ->
(status status);
// Output handle copied properly.
OutputHandle() -> (status status, handle<event> event);
// When two output handles, status and copy are verified before any bytes
// returned.
TwoOutputHandle() -> (status status, handle<event> out0, handle<event> out1);
[testonly]
CompiledOut() -> (status status);
};