Crate fuchsia_zircon

source ·
Expand description

Type-safe bindings for Zircon kernel syscalls.

Modules

Prelude containing common utility traits. Designed for use like use fuchsia_zircon::prelude::*;

Macros

Structs

An object representing a Zircon Bus Transaction Initiator object. See BTI Documentation for details.
An object representing a Zircon channel.
An object representing a kernel clock, used to track the progress of time. A clock is a one-dimensional affine transformation of the clock monotonic reference timeline which may be atomically adjusted by a maintainer and observed by clients.
Fine grained details of a Clock object.
A one-dimensional affine transformation that maps points from the reference timeline to the clock timeline. See clock transformations.
Specifies an update to zero or more properties of a clock. See [Clock::update]
Builder to specify how zero or more properties of a clock should be updated. See [Clock::update].
An object representing a Zircon ‘debuglog’ object.
An object representing a Zircon event object.
An object representing a Zircon event_pair
An object representing a Zircon exception object.
Options that may be used with Task::create_exception_channel
An object representing a Zircon fifo.
Wrapper type for guest physical addresses.
An object representing a Zircon guest
Contents of a guest bell packet generated by the kernel. This is a type-safe wrapper for zx_packet_guest_bell_t
Contents of a guest I/O packet generated by the kernel. This is a type-safe wrapper for zx_packet_guest_io_t
Contents of a guest memory packet generated by the kernel. This is a type-safe wrapper for zx_packet_guest_memory_t
Contents of a guest VCPU packet generated by the kernel. This is a type-safe wrapper for zx_packet_guest_vcpu_t
An object representing a Zircon handle.
Basic information about a handle.
Operation to perform on handles during write. Based on zx_handle_disposition_t, but does not match the same layout.
Information on handles that were read. Based on zx_handle_info_t.
An object representing a Zircon interrupt.
An object representing a Zircon iommu
An object representing a Zircon job.
Options that may be used by Job::set_critical.
A buffer for receiving messages from a channel.
A buffer for receiving messages from a channel.
Zircon object types.
A packet sent through a port. This is a type-safe wrapper for zx_port_packet_t.
An object representing a Zircon pager.
Options that may be used when creating a pager.
Contents of a pager packet generated by the kernel. This is a type-safe wrapper for zx_packet_page_request_t
An object representing a Zircon Pinned Memory Token. See PMT Documentation for details.
An object representing a Zircon port.
An object representing a Zircon process.
Options that may be used when creating a Process.
An object representing a Zircon profile.
Object property types for use with [object_get_property()] and [object_set_property].
An object representing a Zircon resource.
Rights associated with a handle.
Contents of a signal packet (one generated by the kernel). This is a type-safe wrapper for zx_packet_signal_t.
Signals that can be waited upon.
An object representing a Zircon socket
Status type indicating the result of a Fuchsia syscall.
An object representing a Zircon stream.
An object representing a Zircon thread.
An object representing a Zircon timer, such as the one returned by zx_timer_create.
A borrowed value of type T.
Contents of a user packet (one sent by port_queue). This is a type-safe wrapper for zx_packet_user_t.
An object representing a Zircon virtual memory address region.
Flags to VMAR routines which are considered safe.
Flags to all VMAR routines.
An object representing a Zircon virtual memory object.
Options that may be used when creating a Vmo child.
Flags that may be set when receiving info on a Vmo.
VM Object opcodes
Options that may be used when creating a Vmo.
Options for wait_async
A “wait item” containing a handle reference and information about what signals to wait on, and, on return from object_wait_many, which are pending.

Enums

Represents the default operand size as specified by the CS descriptor.
Handle operation.
Represents the ZX_POL_ACTION_* constants
Represents the ZX_POL_* constants
Represents the ZX_TIMER_SLACK_* constants
Holds a timer policy or a basic policy set for zx_job_set_policy
The contents of a Packet.
Write disposition to set on a zircon socket with zx_socket_set_disposition.

Traits

A trait to get a reference to the underlying handle of an object.
A trait implemented by all handle-based types.
A query to get info about a zircon object.
A trait implemented by all handles for objects which have a peer.
A definition for properties about a zircon object.

Functions

Mix the given entropy into the kernel CPRNG.
Draw random bytes from the kernel’s CPRNG to fill buffer. This function always fills the buffer.
Query information about a zircon object. Returns (num_returned, num_remaining) on success.
Get a property on a zircon object
Set a property on a zircon object
Wait on multiple handles. The success return value is a bool indicating whether one or more of the provided handle references was closed during the wait.
Convenience re-export of Status::ok.
Retrieve the system memory page size in bytes.
Get the amount of physical memory on the system, in bytes.
Return a version string describing the system (kernel). This string never changes.
Read the number of high-precision timer ticks since boot. These ticks may be processor cycles, high speed timer, profiling timer, etc. They are not guaranteed to continue advancing when the system is asleep.
Return the number of high-precision timer ticks in a second.

Type Definitions