From 407a8a4441781a351a8a431e95a35ff90b2eea64 Mon Sep 17 00:00:00 2001 From: James Prestwood Date: Thu, 4 Jan 2024 08:00:30 -0800 Subject: [PATCH] client: fix AP PairwiseCiphers parsing This property was being parsed as "s" when it should be "as". This results in "ap show" having an empty entry for the PairwiseCiphers list. --- client/ap.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/client/ap.c b/client/ap.c index f444a12c..3a024d7c 100644 --- a/client/ap.c +++ b/client/ap.c @@ -162,18 +162,27 @@ static const char *get_freq_tostr(const void *data) static void update_pairwise(void *data, struct l_dbus_message_iter *variant) { struct ap *ap = data; + struct l_dbus_message_iter array; char *value; + char **strv; + if (ap->pairwise) l_free(ap->pairwise); - if (!l_dbus_message_iter_get_variant(variant, "s", &value)) { + if (!l_dbus_message_iter_get_variant(variant, "as", &array)) { ap->pairwise = NULL; return; } - ap->pairwise = l_strdup(value); + strv = l_strv_new(); + + while (l_dbus_message_iter_next_entry(&array, &value)) + strv = l_strv_append(strv, value); + + ap->pairwise = l_strjoinv(strv, ' '); + l_strv_free(strv); } static const char *get_pairwise_tostr(const void *data)