diff --git a/monitor/nlmon.c b/monitor/nlmon.c index dc7913e8..fb23282c 100644 --- a/monitor/nlmon.c +++ b/monitor/nlmon.c @@ -573,6 +573,7 @@ static const struct cipher_suites rsn_akm_selectors[] = { { 0x000fac07, "TDLS; TPK" }, { 0x000fac08, "SAE/PMKSA caching SHA256; RSNA PMKSA caching SHA256/mesh peering exchange" }, { 0x000fac09, "FT SAE SHA256; FT" }, + { 0x000fac12, "OWE" }, { } }; @@ -1405,6 +1406,21 @@ static void print_ie_rm_enabled_caps(unsigned int level, bytemask2, sizeof(bytemask2), capabilities); } +static void print_ie_owe(unsigned int level, + const char *label, + const void *data, uint16_t size) +{ + uint16_t group; + + print_attr(level, "%s: len %u", label, size); + + group = l_get_le16(data); + + print_attr(level + 1, "ECC Group: %u", group); + print_attr(level + 1, "Public Key:"); + print_hexdump(level + 2, data + 2, size - 2); +} + static struct attr_entry ie_entry[] = { { IE_TYPE_SSID, "SSID", ATTR_CUSTOM, { .function = print_ie_ssid } }, @@ -1438,6 +1454,8 @@ static struct attr_entry ie_entry[] = { ATTR_CUSTOM, { .function = print_ie_ht_capabilities } }, { IE_TYPE_RM_ENABLED_CAPABILITIES, "RM Enabled Capabilities", ATTR_CUSTOM, { .function = print_ie_rm_enabled_caps } }, + { IE_TYPE_OWE_DH_PARAM, "OWE Diffie-Hellman Parameter", + ATTR_CUSTOM, { .function = print_ie_owe } }, { }, };