]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: fix modem Bearers/Ports property signatures
authorLuca Boccassi <luca.boccassi@gmail.com>
Wed, 10 Jun 2026 19:04:33 +0000 (20:04 +0100)
committerDaan De Meyer <daan.j.demeyer@gmail.com>
Thu, 11 Jun 2026 07:43:09 +0000 (09:43 +0200)
The Bearers and Ports entries in the WWAN modem property maps declared
signatures "a{sv}" and "a{su}", but the callbacks read "ao" and "a(su)".
The mismatch was harmless while the declared signature was never checked,
but becomes a dropped property once it is enforced. Declare the actual
signatures.

Follow-up for f8a4c3d375b83f3ee249ca3f4b7f407b618a9491

src/network/networkd-wwan-bus.c

index 13a860e2dc012cf213da88dd6cce4e36f9aef65f..98c6a28c2697bed12415776eab27f3c8bfb6dd4e 100644 (file)
@@ -882,12 +882,12 @@ static int modem_properties_changed_signal(
                 sd_bus_error *ret_error) {
 
         static const struct bus_properties_map map[] = {
-                { "Bearers",       "a{sv}", modem_map_bearers, 0,                                 },
+                { "Bearers",          "ao", modem_map_bearers, 0,                                 },
                 { "State",             "i", NULL,              offsetof(Modem, state)             },
                 { "StateFailedReason", "u", NULL,              offsetof(Modem, state_fail_reason) },
                 { "Manufacturer",      "s", NULL,              offsetof(Modem, manufacturer)      },
                 { "Model",             "s", NULL,              offsetof(Modem, model)             },
-                { "Ports",         "a{su}", modem_map_ports,   0,                                 },
+                { "Ports",         "a(su)", modem_map_ports,   0,                                 },
                 {}
         };
         Modem *modem = ASSERT_PTR(userdata);
@@ -969,7 +969,7 @@ static int modem_add(Manager *m, const char *path, sd_bus_message *message, sd_b
                 { "StateFailedReason", "u",     NULL,              offsetof(Modem, state_fail_reason) },
                 { "Manufacturer",      "s",     NULL,              offsetof(Modem, manufacturer)      },
                 { "Model",             "s",     NULL,              offsetof(Modem, model)             },
-                { "Ports",             "a{su}", modem_map_ports,   0,                                 },
+                { "Ports",             "a(su)", modem_map_ports,   0,                                 },
                 {}
         };
         Modem *modem;