fn bind_mount()

in metalos/lib/systemd/src/machined_manager.rs [322:414]


    fn bind_mount(
        &self,
        source: &FilePath,
        destination: &FilePath,
        read_only: bool,
        mkdir: bool,
    ) -> zbus::Result<()>;

    /// See [copy_from_machine](ManagerProxy::copy_from_machine)
    fn copy_from(&self, source: &FilePath, destination: &FilePath) -> zbus::Result<()>;

    /// See [copy_to_machine](ManagerProxy::copy_to_machine)
    fn copy_to(&self, source: &FilePath, destination: &FilePath) -> zbus::Result<()>;

    /// See [get_machine_addresses](ManagerProxy::get_machine_addresses)
    fn get_addresses(&self) -> zbus::Result<Vec<(i32, Address)>>;

    /// See [get_machine_osrelease](ManagerProxy::get_machine_osrelease)
    fn get_osrelease(&self) -> zbus::Result<std::collections::HashMap<String, String>>;

    /// See [kill_machine](ManagerProxy::kill_machine)
    fn kill(&self, who: &KillWho, signal: Signal) -> zbus::Result<()>;

    /// See [open_machine_login](ManagerProxy::open_machine_login)
    fn open_login(&self) -> zbus::Result<(zbus::zvariant::Fd, OwnedFilePath)>;

    /// See [open_machine_pty](ManagerProxy::open_machine_pty)
    fn open_pty(&self) -> zbus::Result<(zbus::zvariant::Fd, OwnedFilePath)>;

    /// See [open_machine_root_directory](ManagerProxy::open_machine_root_directory)
    fn open_root_directory(&self) -> zbus::Result<zbus::zvariant::Fd>;

    /// See [open_machine_shell](ManagerProxy::open_machine_shell)
    fn open_shell(
        &self,
        user: &str,
        path: &FilePath,
        args: &[&str],
        environment: &Environment,
    ) -> zbus::Result<(zbus::zvariant::Fd, OwnedFilePath)>;

    /// See [terminate_machine](ManagerProxy::terminate_machine)
    fn terminate(&self) -> zbus::Result<()>;

    #[dbus_proxy(property)]
    fn class(&self) -> zbus::Result<Class>;

    /// Machine UUID.
    #[dbus_proxy(property)]
    fn id(&self) -> zbus::Result<Uuid>;

    /// PID of the leader process of the machine.
    #[dbus_proxy(property)]
    fn leader(&self) -> zbus::Result<Leader>;

    /// Machine name as it was passed in during registration.
    #[dbus_proxy(property)]
    fn name(&self) -> zbus::Result<MachineName>;

    /// Array of network interface indices that point towards the container, the
    /// VM or the host.
    #[dbus_proxy(property)]
    fn network_interfaces(&self) -> zbus::Result<Vec<i32>>;

    /// Root directory of the container if it is known and applicable or the
    /// empty string.
    #[dbus_proxy(property)]
    fn root_directory(&self) -> zbus::Result<OwnedFilePath>;

    /// Short string identifying the registering service as passed in during
    /// registration of the machine.
    #[dbus_proxy(property)]
    fn service(&self) -> zbus::Result<String>;

    /// Current running state of the machine.
    #[dbus_proxy(property)]
    fn state(&self) -> zbus::Result<MachineState>;

    /// Realtime timestamp when the virtual machine was created.
    #[dbus_proxy(property)]
    fn timestamp(&self) -> zbus::Result<Timestamp>;

    /// Monotonic version of [timestamp](MachineProxy::timestamp)
    #[dbus_proxy(property)]
    fn timestamp_monotonic(&self) -> zbus::Result<MonotonicTimestamp>;

    /// Unit is the systemd scope or service unit name for the machine.
    #[dbus_proxy(property)]
    fn unit(&self) -> zbus::Result<UnitName>;
}

#[cfg(test)]
mod tests {