supplicant: print interface capabilities

This commit is contained in:
Beniamino Galvani 2021-02-22 10:54:25 +01:00
parent f7f4db156f
commit d233314ce1
3 changed files with 31 additions and 22 deletions

View file

@ -1260,6 +1260,15 @@ _starting_check_ready(NMSupplicantInterface *self)
return; return;
} }
_LOGD("interface supported features:"
" AP%c"
" FT%c"
" SAE%c"
"",
NM_SUPPL_CAP_TO_CHAR(priv->iface_capabilities, NM_SUPPL_CAP_TYPE_AP),
NM_SUPPL_CAP_TO_CHAR(priv->iface_capabilities, NM_SUPPL_CAP_TYPE_FT),
NM_SUPPL_CAP_TO_CHAR(priv->iface_capabilities, NM_SUPPL_CAP_TYPE_SAE));
set_state(self, priv->supp_state); set_state(self, priv->supp_state);
} }

View file

@ -168,19 +168,6 @@ _caps_set(NMSupplicantManagerPrivate *priv, NMSupplCapType type, NMTernary value
priv->capabilities = NM_SUPPL_CAP_MASK_SET(priv->capabilities, type, value); priv->capabilities = NM_SUPPL_CAP_MASK_SET(priv->capabilities, type, value);
} }
static char
_caps_to_char(NMSupplicantManagerPrivate *priv, NMSupplCapType type)
{
NMTernary val;
val = NM_SUPPL_CAP_MASK_GET(priv->capabilities, type);
if (val == NM_TERNARY_TRUE)
return '+';
if (val == NM_TERNARY_FALSE)
return '-';
return '?';
}
/*****************************************************************************/ /*****************************************************************************/
static void static void
@ -1008,15 +995,15 @@ _dbus_get_capabilities_cb(GVariant *res, GError *error, gpointer user_data)
" FAST%c" " FAST%c"
" WFD%c" " WFD%c"
"", "",
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_AP), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_AP),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_PMF), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_PMF),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_FILS), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_FILS),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_P2P), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_P2P),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_FT), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_FT),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_SHA384), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_SHA384),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_MESH), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_MESH),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_FAST), NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_FAST),
_caps_to_char(priv, NM_SUPPL_CAP_TYPE_WFD)); NM_SUPPL_CAP_TO_CHAR(priv->capabilities, NM_SUPPL_CAP_TYPE_WFD));
nm_assert(g_hash_table_size(priv->supp_ifaces) == 0); nm_assert(g_hash_table_size(priv->supp_ifaces) == 0);
nm_assert(c_list_is_empty(&priv->supp_lst_head)); nm_assert(c_list_is_empty(&priv->supp_lst_head));

View file

@ -116,6 +116,19 @@ NM_SUPPL_CAP_MASK_GET(NMSupplCapMask features, NMSupplCapType type)
return (NMTernary)(f - 1); return (NMTernary)(f - 1);
} }
static inline char
NM_SUPPL_CAP_TO_CHAR(NMSupplCapMask features, NMSupplCapType type)
{
NMTernary val;
val = NM_SUPPL_CAP_MASK_GET(features, type);
if (val == NM_TERNARY_TRUE)
return '+';
if (val == NM_TERNARY_FALSE)
return '-';
return '?';
}
/*****************************************************************************/ /*****************************************************************************/
/** /**