Crate rsbinder

Source
Expand description

A library for Binder communication developed purely in Rust.

§License

Licensed under Apache License, Version 2.0.

§References

Re-exports§

pub use binder_async::BinderAsyncPool;
pub use binder_async::BinderAsyncRuntime;
pub use binder_async::BoxFuture;
pub use error::Result;
pub use error::StatusCode;
pub use file_descriptor::ParcelFileDescriptor;
pub use parcel::Parcel;
pub use parcelable_holder::ParcelableHolder;
pub use status::ExceptionCode;
pub use status::Status;
pub use native::*;
pub use parcelable::*;
pub use proxy::*;

Modules§

binder_async
binderfs
error
file_descriptor
hub
native
parcel
parcelable
parcelable_holder
proxy
status
thread_state

Macros§

__declare_binder_interface
declare_binder_enum
Declare an AIDL enumeration.
declare_binder_interface
Declare a binder interface.
impl_deserialize_for_parcelable
Implement Deserialize trait and friends for a parcelable
impl_serialize_for_parcelable
Implement Serialize trait and friends for a parcelable

Structs§

ProcessState
SIBinder
Strong reference to a binder object.
Strong
Strong reference to a binder object
TokioRuntime
Wrapper around Tokio runtime types for providing a runtime to a binder server.
WIBinder
Weak reference to a binder object.
Weak
Weak reference to a binder object

Enums§

Stability
Interface stability promise
Tokio
Use the Tokio spawn_blocking pool with AIDL.

Constants§

DEBUG_PID_TRANSACTION
DEFAULT_BINDERFS_PATH
DEFAULT_BINDER_CONTROL_PATH
DEFAULT_BINDER_PATH
DUMP_TRANSACTION
EXTENSION_TRANSACTION
FIRST_CALL_TRANSACTION
FLAG_CLEAR_BUF
Corresponds to TF_CLEAR_BUF – clear transaction buffers after call is made.
FLAG_ONEWAY
Corresponds to TF_ONE_WAY – an asynchronous call.
FLAG_PRIVATE_LOCAL
Set to the vendor flag if we are building for the VNDK, 0 otherwise
FLAG_PRIVATE_VENDOR
INTERFACE_HEADER
INTERFACE_TRANSACTION
LAST_CALL_TRANSACTION
LIKE_TRANSACTION
PING_TRANSACTION
SET_RPC_CLIENT_TRANSACTION
SHELL_COMMAND_TRANSACTION
START_RECORDING_TRANSACTION
STOP_RECORDING_TRANSACTION
SYSPROPS_TRANSACTION
TWEET_TRANSACTION

Traits§

DeathRecipient
Interface for receiving a notification when a binder object is no longer valid.
FromIBinder
Trait for converting a generic Binder object into a specific Binder
IBinder
Interface of binder local or remote objects.
Interface
Super-trait for Binder interfaces.
Remotable
A local service that can be remotable via Binder.
ToAsyncInterface
Implemented by sync interfaces to specify what the associated async interface is. Generic to handle the fact that async interfaces are generic over a thread pool.
ToSyncInterface
Implemented by async interfaces to specify what the associated sync interface is.
Transactable
A transactable object that can be used to process Binder commands.

Functions§

get_interface
Retrieve an existing service for a particular interface, sleeping for a few seconds if it doesn’t yet exist.

Type Aliases§

TransactionCode
Binder action to perform.
TransactionFlags
Additional operation flags.