pub struct AdminSynchronousProxy { /* private fields */ }
Implementations§
source§impl AdminSynchronousProxy
impl AdminSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
sourcepub fn wait_for_event(
&self,
deadline: MonotonicTime,
) -> Result<AdminEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicTime, ) -> Result<AdminEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
sourcepub fn mount(
&self,
device: ClientEnd<BlockMarker>,
name: &str,
options: MountOptions,
___deadline: MonotonicTime,
) -> Result<AdminMountResult, Error>
pub fn mount( &self, device: ClientEnd<BlockMarker>, name: &str, options: MountOptions, ___deadline: MonotonicTime, ) -> Result<AdminMountResult, Error>
Mounts the filesystem on the block device. The filesystem will be mounted in /fs/mnt/
sourcepub fn unmount(
&self,
name: &str,
___deadline: MonotonicTime,
) -> Result<AdminUnmountResult, Error>
pub fn unmount( &self, name: &str, ___deadline: MonotonicTime, ) -> Result<AdminUnmountResult, Error>
Unmounts a previously mounted filesystem.
sourcepub fn get_device_path(
&self,
fs_id: u64,
___deadline: MonotonicTime,
) -> Result<AdminGetDevicePathResult, Error>
pub fn get_device_path( &self, fs_id: u64, ___deadline: MonotonicTime, ) -> Result<AdminGetDevicePathResult, Error>
Returns the device path for the filesystem with the given fs_id.
sourcepub fn write_data_file(
&self,
filename: &str,
payload: Vmo,
___deadline: MonotonicTime,
) -> Result<AdminWriteDataFileResult, Error>
pub fn write_data_file( &self, filename: &str, payload: Vmo, ___deadline: MonotonicTime, ) -> Result<AdminWriteDataFileResult, Error>
Writes filename
into the data partition with contents from payload
, formatting the data
partition if it isn’t already formatted. Overwrites file if it already exists.
This can only be called while the data partition isn’t already mounted, which is typically
in recovery builds where fshost is running with the ramdisk_image
flag set.
sourcepub fn wipe_storage(
&self,
blobfs_root: Option<ServerEnd<DirectoryMarker>>,
blob_creator: Option<ServerEnd<BlobCreatorMarker>>,
___deadline: MonotonicTime,
) -> Result<AdminWipeStorageResult, Error>
pub fn wipe_storage( &self, blobfs_root: Option<ServerEnd<DirectoryMarker>>, blob_creator: Option<ServerEnd<BlobCreatorMarker>>, ___deadline: MonotonicTime, ) -> Result<AdminWipeStorageResult, Error>
Reprovision the first non-ramdisk FVM volume, and format/mount the blob partition.
The formatted Blobfs instance can be accessed via the client end of blobfs_root
; if no
handle is provided, then blobfs won’t be formatted.
If fxblob is configured, blob_creator will be connected with the fxfs BlobCreator protocol,
which should be used instead of creating blobs in the blobfs_root
. blobfs_root
will
still be connected and can be used to read blobs. If fxblob is configured, but no handle is
provided for blob_creator or for blobfs_root, the blob volume won’t be formatted. If a
handle is provided for blob_creator but fxblob is not configured, the channel will be
closed.
This function will pause the fshost block watcher regardless of success or failure.
Requires fshost to be started with the ramdisk_image
config option set to true.
WARNING: This will cause irreversible data loss. Use with caution.
TODO(https://fxbug.dev/42063480): This function unbinds all child drivers of the volume to be wiped. This can race with the fshost block device manager, which attempts to bind the FVM driver and unseal the zxcrypt volume.
sourcepub fn shred_data_volume(
&self,
___deadline: MonotonicTime,
) -> Result<AdminShredDataVolumeResult, Error>
pub fn shred_data_volume( &self, ___deadline: MonotonicTime, ) -> Result<AdminShredDataVolumeResult, Error>
Wipes the data volume which will get reinitialised upon next boot. This is not cryptographically secure; the caller should take care to reset hardware keys.
Trait Implementations§
source§impl Debug for AdminSynchronousProxy
impl Debug for AdminSynchronousProxy
source§impl SynchronousProxy for AdminSynchronousProxy
impl SynchronousProxy for AdminSynchronousProxy
§type Proxy = AdminProxy
type Proxy = AdminProxy
§type Protocol = AdminMarker
type Protocol = AdminMarker
Proxy
controls.