blob: 625cfd46ef72d78823e3255874035506d99dad71 [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 debuglog {
// TODO(fxbug.dev/32803): handle == ZX_HANDLE_INVALID accepted.
/// Create an object allowing access to the kernel debuglog.
///
/// Rights: resource must have resource kind ZX_RSRC_KIND_ROOT.
debuglog_create(handle:RESOURCE resource, uint32 options)
-> (status status, handle:LOG out);
/// Write a message to the kernel debuglog.
///
/// Rights: handle must be of type ZX_OBJ_TYPE_LOG and have ZX_RIGHT_WRITE.
debuglog_write(handle:LOG handle, uint32 options, vector_void buffer) -> (status status);
/// Read a single log record from the kernel debuglog.
///
/// Rights: handle must be of type ZX_OBJ_TYPE_LOG and have ZX_RIGHT_READ.
debuglog_read(handle:LOG handle, uint32 options) -> (status status, vector_void buffer);
};