blob: eaa575a89104f2b37c143a2bd5a9b5dc9c49ab3e [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;
@transport("Syscall")
protocol Syscall {
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_0(void);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_0() -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_1(int32_t a);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
@test_category1
Test_1(struct {
a int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_2(int32_t a, int32_t b);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
@test_category1
Test_2(struct {
a int32;
b int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_3(int32_t a, int32_t b, int32_t c);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
@test_category2
Test_3(struct {
a int32;
b int32;
c int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_4(int32_t a, int32_t b, int32_t c, int32_t d);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_4(struct {
a int32;
b int32;
c int32;
d int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_5(
/// int32_t a, int32_t b, int32_t c, int32_t d, int32_t e);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_5(struct {
a int32;
b int32;
c int32;
d int32;
e int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_6(
/// int32_t a, int32_t b, int32_t c, int32_t d, int32_t e, int32_t f);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_6(struct {
a int32;
b int32;
c int32;
d int32;
e int32;
f int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_7(int32_t a,
/// int32_t b,
/// int32_t c,
/// int32_t d,
/// int32_t e,
/// int32_t f,
/// int32_t g);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_7(struct {
a int32;
b int32;
c int32;
d int32;
e int32;
f int32;
g int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_8(int32_t a,
/// int32_t b,
/// int32_t c,
/// int32_t d,
/// int32_t e,
/// int32_t f,
/// int32_t g,
/// int32_t h);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
Test_8(struct {
a int32;
b int32;
c int32;
d int32;
e int32;
f int32;
g int32;
h int32;
}) -> () error status;
@no_doc
@next
Next_1(struct {
arg int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_wrapper(int32_t a, int32_t b, int32_t c);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
TestWrapper(struct {
a int32;
b int32;
c int32;
}) -> () error status;
/// ## Summary
///
/// TODO(fxbug.dev/32938)
///
/// ## Declaration
///
/// ```c
/// #include <zircon/syscalls.h>
///
/// zx_status_t zx_syscall_test_handle_create(zx_status_t return_value,
/// zx_handle_t* out);
/// ```
///
/// ## Description
///
/// TODO(fxbug.dev/32938)
///
/// ## Rights
///
/// TODO(fxbug.dev/32253)
///
/// ## Return value
///
/// TODO(fxbug.dev/32938)
///
/// ## Errors
///
/// TODO(fxbug.dev/32938)
///
/// ## See also
///
/// TODO(fxbug.dev/32938)
@testonly
TestHandleCreate(struct {
return_value status;
}) -> (resource struct {
out handle:EVENT;
}) error status;
@testonly
TestWideningUnsignedNarrow(struct {
a uint64;
b uint32;
c uint16;
d uint8;
}) -> (@wrapped_return struct {
total uint64;
});
@testonly
TestWideningSignedNarrow(struct {
a int64;
b int32;
c int16;
d int8;
}) -> (@wrapped_return struct {
total int64;
});
@testonly
TestWideningUnsignedWide(struct {
a uint64;
b uint32;
c uint16;
d uint8;
}) -> (@wrapped_return struct {
total uint64;
});
@testonly
TestWideningSignedWide(struct {
a int64;
b int32;
c int16;
d int8;
}) -> (@wrapped_return struct {
total int64;
});
};