diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.IPv4.bus.xml b/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.IPv4.bus.xml
deleted file mode 120000
index 7b1c091d22..0000000000
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.IPv4.bus.xml
+++ /dev/null
@@ -1 +0,0 @@
-org.opensuse.Agama.Network1.Connection.bus.xml
\ No newline at end of file
diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.Wireless.bus.xml b/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.Wireless.bus.xml
deleted file mode 120000
index 7b1c091d22..0000000000
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.Wireless.bus.xml
+++ /dev/null
@@ -1 +0,0 @@
-org.opensuse.Agama.Network1.Connection.bus.xml
\ No newline at end of file
diff --git a/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.IP.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.IP.bus.xml
new file mode 120000
index 0000000000..06ac291eab
--- /dev/null
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.IP.bus.xml
@@ -0,0 +1 @@
+org.opensuse.Agama1.Network.Connection.bus.xml
\ No newline at end of file
diff --git a/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Match.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Match.bus.xml
new file mode 120000
index 0000000000..06ac291eab
--- /dev/null
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Match.bus.xml
@@ -0,0 +1 @@
+org.opensuse.Agama1.Network.Connection.bus.xml
\ No newline at end of file
diff --git a/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Wireless.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Wireless.bus.xml
new file mode 120000
index 0000000000..06ac291eab
--- /dev/null
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.Wireless.bus.xml
@@ -0,0 +1 @@
+org.opensuse.Agama1.Network.Connection.bus.xml
\ No newline at end of file
diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.bus.xml
similarity index 62%
rename from doc/dbus/bus/org.opensuse.Agama.Network1.Connection.bus.xml
rename to doc/dbus/bus/org.opensuse.Agama1.Network.Connection.bus.xml
index 4351d4b7b6..954853b172 100644
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Connection.bus.xml
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Connection.bus.xml
@@ -1,13 +1,42 @@
-
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Connections.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Connections.bus.xml
similarity index 85%
rename from doc/dbus/bus/org.opensuse.Agama.Network1.Connections.bus.xml
rename to doc/dbus/bus/org.opensuse.Agama1.Network.Connections.bus.xml
index 3c840bdea8..9bf1827055 100644
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Connections.bus.xml
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Connections.bus.xml
@@ -1,7 +1,10 @@
-
-
+
+
+
+
+
+
@@ -33,7 +36,7 @@
-
+
@@ -43,8 +46,8 @@
@@ -74,11 +77,12 @@
-->
-
-
-
-
-
+
+
+
+
+
-
diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Device.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Device.bus.xml
similarity index 86%
rename from doc/dbus/bus/org.opensuse.Agama.Network1.Device.bus.xml
rename to doc/dbus/bus/org.opensuse.Agama1.Network.Device.bus.xml
index c00ecd8fa3..d45f8c5cb7 100644
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Device.bus.xml
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Device.bus.xml
@@ -1,7 +1,10 @@
-
-
+
+
+
+
+
+
@@ -9,11 +12,6 @@
-
-
-
-
-
@@ -38,7 +36,7 @@
-
+
-
diff --git a/doc/dbus/bus/org.opensuse.Agama.Network1.Devices.bus.xml b/doc/dbus/bus/org.opensuse.Agama1.Network.Devices.bus.xml
similarity index 87%
rename from doc/dbus/bus/org.opensuse.Agama.Network1.Devices.bus.xml
rename to doc/dbus/bus/org.opensuse.Agama1.Network.Devices.bus.xml
index 0b1f278bff..77b654e59f 100644
--- a/doc/dbus/bus/org.opensuse.Agama.Network1.Devices.bus.xml
+++ b/doc/dbus/bus/org.opensuse.Agama1.Network.Devices.bus.xml
@@ -1,13 +1,8 @@
-
-
+
-
-
-
-
+
+
+
@@ -17,11 +12,6 @@
-
-
-
-
-
@@ -46,5 +36,12 @@
+
+
+
+
+
+
-
diff --git a/doc/dbus/bus/seed.sh b/doc/dbus/bus/seed.sh
index 49f013b792..332cd891b3 100755
--- a/doc/dbus/bus/seed.sh
+++ b/doc/dbus/bus/seed.sh
@@ -35,7 +35,6 @@ look Manager1
look Software1
look Software1.Proposal
look Storage1
-look Users1
abusctl introspect --xml-interface \
${DD}1 \
@@ -64,3 +63,56 @@ abusctl introspect --xml-interface \
${SS}1/Questions/1 \
| cleanup \
> ${DD}1.Questions.WithPassword.bus.xml
+
+# Network interfaces
+abusctl call \
+ ${DD}1 \
+ ${SS}1/Network/connections \
+ ${DD}1.Network.Connections \
+ AddConnection "sy" "wireless0" 2
+
+OBJ=$(abusctl call \
+ ${DD}1 \
+ ${SS}1/Network/connections \
+ ${DD}1.Network.Connections \
+ GetConnection "s" "wireless0" | cut -f2 -d\")
+
+abusctl introspect --xml-interface \
+ ${DD}1 \
+ ${OBJ} \
+ ${DD}1.Network.Connection \
+ | cleanup \
+ >${DD}1.Network.Connection.bus.xml
+
+abusctl call \
+ ${DD}1 \
+ ${SS}1/Network/connections \
+ ${DD}1.Network.Connections \
+ RemoveConnection "s" "wireless0"
+
+abusctl introspect --xml-interface \
+ ${DD}1 \
+ ${SS}1/Network/connections \
+ ${DD}1.Network.Connections \
+ | cleanup \
+ >${DD}1.Network.Connections.bus.xml
+
+abusctl introspect --xml-interface \
+ ${DD}1 \
+ ${SS}1/Network/devices \
+ ${DD}1.Network.Devices \
+ | cleanup \
+ >${DD}1.Network.Devices.bus.xml
+
+abusctl introspect --xml-interface \
+ ${DD}1 \
+ ${SS}1/Network/devices/0 \
+ ${DD}1.Network.Device \
+ | cleanup \
+ >${DD}1.Network.Device.bus.xml
+
+abusctl introspect --xml-interface \
+ ${DD}.Manager1 \
+ ${SS}/Users1 \
+ | cleanup \
+ >${DD}.Users1.bus.xml
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Connection.IPv4.doc.xml b/doc/dbus/org.opensuse.Agama.Network1.Connection.IPv4.doc.xml
deleted file mode 100644
index d174947130..0000000000
--- a/doc/dbus/org.opensuse.Agama.Network1.Connection.IPv4.doc.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Devices.doc.xml b/doc/dbus/org.opensuse.Agama.Network1.Devices.doc.xml
deleted file mode 100644
index d11df5f3cc..0000000000
--- a/doc/dbus/org.opensuse.Agama.Network1.Devices.doc.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/dbus/org.opensuse.Agama.Software1.bus.xml b/doc/dbus/org.opensuse.Agama.Software1.bus.xml
deleted file mode 100644
index cd7eb6c4f6..0000000000
--- a/doc/dbus/org.opensuse.Agama.Software1.bus.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/dbus/org.opensuse.Agama1.Network.Connection.IP.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Connection.IP.doc.xml
new file mode 100644
index 0000000000..841aa314bd
--- /dev/null
+++ b/doc/dbus/org.opensuse.Agama1.Network.Connection.IP.doc.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/dbus/org.opensuse.Agama1.Network.Connection.Match.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Connection.Match.doc.xml
new file mode 100644
index 0000000000..0f7b77cce2
--- /dev/null
+++ b/doc/dbus/org.opensuse.Agama1.Network.Connection.Match.doc.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Connection.Wireless.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Connection.Wireless.doc.xml
similarity index 69%
rename from doc/dbus/org.opensuse.Agama.Network1.Connection.Wireless.doc.xml
rename to doc/dbus/org.opensuse.Agama1.Network.Connection.Wireless.doc.xml
index 184008a809..8d7cfce8af 100644
--- a/doc/dbus/org.opensuse.Agama.Network1.Connection.Wireless.doc.xml
+++ b/doc/dbus/org.opensuse.Agama1.Network.Connection.Wireless.doc.xml
@@ -1,14 +1,12 @@
-
-
+
-
+
-
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Connection.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Connection.doc.xml
similarity index 65%
rename from doc/dbus/org.opensuse.Agama.Network1.Connection.doc.xml
rename to doc/dbus/org.opensuse.Agama1.Network.Connection.doc.xml
index 730f07eb20..849fba7fae 100644
--- a/doc/dbus/org.opensuse.Agama.Network1.Connection.doc.xml
+++ b/doc/dbus/org.opensuse.Agama1.Network.Connection.doc.xml
@@ -1,8 +1,6 @@
-
-
+
-
+
+
-
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Connections.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Connections.doc.xml
similarity index 73%
rename from doc/dbus/org.opensuse.Agama.Network1.Connections.doc.xml
rename to doc/dbus/org.opensuse.Agama1.Network.Connections.doc.xml
index 8d229b98e8..6ae51fd2a7 100644
--- a/doc/dbus/org.opensuse.Agama.Network1.Connections.doc.xml
+++ b/doc/dbus/org.opensuse.Agama1.Network.Connections.doc.xml
@@ -1,28 +1,23 @@
-
-
+
-
+
+
+
+
+
-
diff --git a/doc/dbus/org.opensuse.Agama.Network1.Device.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Device.doc.xml
similarity index 51%
rename from doc/dbus/org.opensuse.Agama.Network1.Device.doc.xml
rename to doc/dbus/org.opensuse.Agama1.Network.Device.doc.xml
index ee582c3a02..d5c24b6c4f 100644
--- a/doc/dbus/org.opensuse.Agama.Network1.Device.doc.xml
+++ b/doc/dbus/org.opensuse.Agama1.Network.Device.doc.xml
@@ -1,22 +1,19 @@
-
-
+
-
+
-
diff --git a/doc/dbus/org.opensuse.Agama1.Network.Devices.doc.xml b/doc/dbus/org.opensuse.Agama1.Network.Devices.doc.xml
new file mode 100644
index 0000000000..05fd159527
--- /dev/null
+++ b/doc/dbus/org.opensuse.Agama1.Network.Devices.doc.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
diff --git a/rust/agama-dbus-server/src/network/dbus/interfaces.rs b/rust/agama-dbus-server/src/network/dbus/interfaces.rs
index f0194391ef..32506d53ef 100644
--- a/rust/agama-dbus-server/src/network/dbus/interfaces.rs
+++ b/rust/agama-dbus-server/src/network/dbus/interfaces.rs
@@ -164,11 +164,12 @@ impl Connections {
Ok(())
}
+ /// Notifies than a new interface has been added.
#[dbus_interface(signal)]
pub async fn connection_added(
ctxt: &SignalContext<'_>,
id: &str,
- path: &str,
+ path: &ObjectPath<'_>,
) -> zbus::Result<()>;
}
@@ -279,7 +280,7 @@ impl Match {
#[dbus_interface(name = "org.opensuse.Agama1.Network.Connection.Match")]
impl Match {
- /// List of driver
+ /// List of driver names to match.
#[dbus_interface(property)]
pub async fn driver(&self) -> Vec {
let connection = self.get_connection().await;
@@ -294,7 +295,7 @@ impl Match {
self.update_connection(connection).await
}
- /// List of paths
+ /// List of paths to match agains the ID_PATH udev property of devices.
#[dbus_interface(property)]
pub async fn path(&self) -> Vec {
let connection = self.get_connection().await;
@@ -308,7 +309,7 @@ impl Match {
config.path = path;
self.update_connection(connection).await
}
- /// List of driver
+ /// List of interface names to match.
#[dbus_interface(property)]
pub async fn interface(&self) -> Vec {
let connection = self.get_connection().await;
@@ -323,7 +324,7 @@ impl Match {
self.update_connection(connection).await
}
- /// List of kernel options
+ /// List of kernel options to match.
#[dbus_interface(property)]
pub async fn kernel(&self) -> Vec {
let connection = self.get_connection().await;
diff --git a/rust/agama-dbus-server/src/network/dbus/tree.rs b/rust/agama-dbus-server/src/network/dbus/tree.rs
index c21e87da91..3715a6b94c 100644
--- a/rust/agama-dbus-server/src/network/dbus/tree.rs
+++ b/rust/agama-dbus-server/src/network/dbus/tree.rs
@@ -202,7 +202,11 @@ impl Tree {
}
/// Notify that a new connection has been added
- async fn notify_connection_added(&self, id: &str, path: &str) -> Result<(), ServiceError> {
+ async fn notify_connection_added(
+ &self,
+ id: &str,
+ path: &ObjectPath<'_>,
+ ) -> Result<(), ServiceError> {
let object_server = self.connection.object_server();
let iface_ref = object_server
.interface::<_, interfaces::Connections>(CONNECTIONS_PATH)
diff --git a/rust/agama-lib/src/network/client.rs b/rust/agama-lib/src/network/client.rs
index 1ac2d2510f..9f4dc02df2 100644
--- a/rust/agama-lib/src/network/client.rs
+++ b/rust/agama-lib/src/network/client.rs
@@ -163,7 +163,7 @@ impl<'a> NetworkClient<'a> {
loop {
let signal = stream.next().await.unwrap();
- let (id, _path): (String, String) = signal.body().unwrap();
+ let (id, _path): (String, OwnedObjectPath) = signal.body().unwrap();
if id == conn.id {
break;
};