wayle-network 0.1.2

WiFi and wired network management
Documentation
//! NetworkManager Agent Manager interface.

use zbus::proxy;

#[proxy(
    default_service = "org.freedesktop.NetworkManager",
    interface = "org.freedesktop.NetworkManager.AgentManager",
    default_path = "/org/freedesktop/NetworkManager/AgentManager"
)]
pub(crate) trait AgentManager {
    /// Called by secret Agents to register their ability to provide and save network secrets.
    ///
    /// # Arguments
    /// * `identifier` - Identifies this agent; only one agent in each user session may use the same identifier.
    ///   Identifier formatting follows the same rules as D-Bus bus names with the exception that the ':' character is not allowed.
    fn register(&self, identifier: &str) -> zbus::Result<()>;

    /// Like Register() but indicates agent capabilities to NetworkManager.
    ///
    /// # Arguments
    /// * `identifier` - See Register() for details
    /// * `capabilities` - NMSecretAgentCapabilities flags
    fn register_with_capabilities(&self, identifier: &str, capabilities: u32) -> zbus::Result<()>;

    /// Called by secret Agents to notify NetworkManager that they will no longer handle requests for network secrets.
    fn unregister(&self) -> zbus::Result<()>;
}