diff --git a/src/core/devices/nm-device-wireguard.c b/src/core/devices/nm-device-wireguard.c index 09030dd8f..ca552a2c8 100644 --- a/src/core/devices/nm-device-wireguard.c +++ b/src/core/devices/nm-device-wireguard.c @@ -1939,11 +1939,9 @@ get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec) switch (prop_id) { case PROP_PUBLIC_KEY: - g_value_take_variant(value, - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, - priv->lnk_curr.public_key, - sizeof(priv->lnk_curr.public_key), - 1)); + g_value_take_variant( + value, + nm_g_variant_new_ay(priv->lnk_curr.public_key, sizeof(priv->lnk_curr.public_key))); break; case PROP_LISTEN_PORT: g_value_set_uint(value, priv->lnk_curr.listen_port); diff --git a/src/core/dhcp/nm-dhcp-helper.c b/src/core/dhcp/nm-dhcp-helper.c index 4ffe93f4b..b076840f9 100644 --- a/src/core/dhcp/nm-dhcp-helper.c +++ b/src/core/dhcp/nm-dhcp-helper.c @@ -92,7 +92,7 @@ build_signal_parameters(void) g_variant_builder_add(&builder, "{sv}", name, - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, val, strlen(val), 1)); + nm_g_variant_new_ay((const guint8 *) val, strlen(val))); next:; } diff --git a/src/core/dns/nm-dns-systemd-resolved.c b/src/core/dns/nm-dns-systemd-resolved.c index de01cf9fb..2a8a22890 100644 --- a/src/core/dns/nm-dns-systemd-resolved.c +++ b/src/core/dns/nm-dns-systemd-resolved.c @@ -201,10 +201,7 @@ update_add_ip_config(NMDnsSystemdResolved *self, g_variant_builder_add(dns, "i", addr_family); g_variant_builder_add_value( dns, - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, - nm_ip_config_get_nameserver(data->ip_config, i), - addr_size, - 1)); + nm_g_variant_new_ay(nm_ip_config_get_nameserver(data->ip_config, i), addr_size)); g_variant_builder_close(dns); has_config = TRUE; } diff --git a/src/core/nm-ip6-config.c b/src/core/nm-ip6-config.c index 155594c8f..ce7a4009f 100644 --- a/src/core/nm-ip6-config.c +++ b/src/core/nm-ip6-config.c @@ -2409,9 +2409,7 @@ nameservers_to_gvalue(GArray *array, GValue *value) struct in6_addr *addr; addr = &g_array_index(array, struct in6_addr, i++); - g_variant_builder_add(&builder, - "@ay", - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, addr, 16, 1)); + g_variant_builder_add(&builder, "@ay", nm_g_variant_new_ay_in6addr(addr)); } g_value_take_variant(value, g_variant_builder_end(&builder)); diff --git a/src/core/supplicant/nm-supplicant-config.c b/src/core/supplicant/nm-supplicant-config.c index a4bbb0efc..c216159ca 100644 --- a/src/core/supplicant/nm-supplicant-config.c +++ b/src/core/supplicant/nm-supplicant-config.c @@ -334,11 +334,10 @@ nm_supplicant_config_to_variant(NMSupplicantConfig *self) break; case NM_SUPPL_OPT_TYPE_BYTES: case NM_SUPPL_OPT_TYPE_UTF8: - g_variant_builder_add( - &builder, - "{sv}", - key, - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, option->value, option->len, 1)); + g_variant_builder_add(&builder, + "{sv}", + key, + nm_g_variant_new_ay((const guint8 *) option->value, option->len)); break; case NM_SUPPL_OPT_TYPE_KEYWORD: case NM_SUPPL_OPT_TYPE_STRING: diff --git a/src/core/supplicant/nm-supplicant-interface.c b/src/core/supplicant/nm-supplicant-interface.c index 7cb3df9ad..168dd39c8 100644 --- a/src/core/supplicant/nm-supplicant-interface.c +++ b/src/core/supplicant/nm-supplicant-interface.c @@ -1619,11 +1619,10 @@ _wps_handle_set_pc_cb(GVariant *res, GError *error, gpointer user_data) * enroll with any BSS in range. */ if (!nm_utils_hwaddr_aton(wps_data->bssid, bssid_buf, sizeof(bssid_buf))) nm_assert_not_reached(); - g_variant_builder_add( - &start_args, - "{sv}", - "Bssid", - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, bssid_buf, ETH_ALEN, sizeof(guint8))); + g_variant_builder_add(&start_args, + "{sv}", + "Bssid", + nm_g_variant_new_ay(bssid_buf, ETH_ALEN)); } wps_data->needs_cancelling = TRUE; diff --git a/src/libnm-core-impl/nm-utils.c b/src/libnm-core-impl/nm-utils.c index 84565e650..b4762fab7 100644 --- a/src/libnm-core-impl/nm-utils.c +++ b/src/libnm-core-impl/nm-utils.c @@ -4227,7 +4227,7 @@ _nm_utils_hwaddr_to_dbus_impl(const char *str) if (!_nm_utils_hwaddr_aton(str, buf, sizeof(buf), &len)) return NULL; - return g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, buf, len, 1); + return nm_g_variant_new_ay(buf, len); } static GVariant * diff --git a/src/libnm-glib-aux/nm-shared-utils.c b/src/libnm-glib-aux/nm-shared-utils.c index 41c1a4088..aa1be1f28 100644 --- a/src/libnm-glib-aux/nm-shared-utils.c +++ b/src/libnm-glib-aux/nm-shared-utils.c @@ -516,16 +516,15 @@ nm_utils_gbytes_equal_mem(GBytes *bytes, gconstpointer mem_data, gsize mem_len) GVariant * nm_utils_gbytes_to_variant_ay(GBytes *bytes) { - const guint8 *p; - gsize l; + const guint8 *p = NULL; + gsize l = 0; if (!bytes) { /* for convenience, accept NULL to return an empty variant */ - return g_variant_new_array(G_VARIANT_TYPE_BYTE, NULL, 0); - } + } else + p = g_bytes_get_data(bytes, &l); - p = g_bytes_get_data(bytes, &l); - return g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, p, l, 1); + return nm_g_variant_new_ay(p, l); } /*****************************************************************************/ diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h index d413bd474..d173db7c4 100644 --- a/src/libnm-glib-aux/nm-shared-utils.h +++ b/src/libnm-glib-aux/nm-shared-utils.h @@ -1497,10 +1497,7 @@ nm_g_variant_new_au(const guint32 *data, gsize len) static inline GVariant * nm_g_variant_new_ay_inaddr(int addr_family, gconstpointer addr) { - return g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, - addr ?: &nm_ip_addr_zero, - nm_utils_addr_family_to_size(addr_family), - 1); + return nm_g_variant_new_ay(addr ?: &nm_ip_addr_zero, nm_utils_addr_family_to_size(addr_family)); } static inline GVariant * @@ -1527,10 +1524,7 @@ nm_g_variant_builder_add_sv_bytearray(GVariantBuilder *builder, const guint8 * arr, gsize len) { - g_variant_builder_add(builder, - "{sv}", - key, - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, arr, len, 1)); + g_variant_builder_add(builder, "{sv}", key, nm_g_variant_new_ay(arr, len)); } static inline void diff --git a/src/nmcli/devices.c b/src/nmcli/devices.c index 6cd8d0d19..f44c167c4 100644 --- a/src/nmcli/devices.c +++ b/src/nmcli/devices.c @@ -3774,10 +3774,9 @@ do_device_wifi_connect(const NMCCommand *cmd, NmCli *nmc, int argc, const char * g_variant_builder_init(&builder, G_VARIANT_TYPE_VARDICT); g_variant_builder_init(&array_builder, G_VARIANT_TYPE("aay")); - g_variant_builder_add( - &array_builder, - "@ay", - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, param_user, strlen(param_user), 1)); + g_variant_builder_add(&array_builder, + "@ay", + nm_g_variant_new_ay((const guint8 *) param_user, strlen(param_user))); g_variant_builder_add(&builder, "{sv}", "ssids", g_variant_builder_end(&array_builder)); options = g_variant_builder_end(&builder); @@ -4538,10 +4537,9 @@ do_device_wifi_rescan(const NMCCommand *cmd, NmCli *nmc, int argc, const char *c for (i = 0; i < ssids->len; i++) { const char *ssid = g_ptr_array_index(ssids, i); - g_variant_builder_add( - &array_builder, - "@ay", - g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, ssid, strlen(ssid), 1)); + g_variant_builder_add(&array_builder, + "@ay", + nm_g_variant_new_ay((const guint8 *) ssid, strlen(ssid))); } g_variant_builder_add(&builder, "{sv}", "ssids", g_variant_builder_end(&array_builder));