From 955c88a64af119eb5ecdef7304c59a5fae1ba5f5 Mon Sep 17 00:00:00 2001 From: Andrew Zaborowski Date: Tue, 6 Sep 2016 23:43:32 +0200 Subject: [PATCH] ie: Consistently set group_management_cipher RSNE_ADVANCE may return and if it is before the assignment of info.group_management_cipher, that assignment will be dependent on where the RSNE ends. --- src/ie.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ie.c b/src/ie.c index 56c7a160..3c7309d6 100644 --- a/src/ie.c +++ b/src/ie.c @@ -618,8 +618,6 @@ int ie_parse_rsne(struct ie_tlv_iter *iter, struct ie_rsn_info *out_info) info.pbac = util_is_bit_set(data[1], 4); info.extended_key_id = util_is_bit_set(data[1], 5); - RSNE_ADVANCE(data, len, 2); - /* * BIP—default group management cipher suite in an RSNA with * management frame protection enabled @@ -627,6 +625,8 @@ int ie_parse_rsne(struct ie_tlv_iter *iter, struct ie_rsn_info *out_info) if (info.mfpc) info.group_management_cipher = IE_RSN_CIPHER_SUITE_BIP; + RSNE_ADVANCE(data, len, 2); + /* Parse PMKID Count field */ if (len < 2) return -EBADMSG;