Browse Source

mesh: Fix MTK derivation to use AKM suite selector

mesh_rsn_derive_mtk() was hardcoded to use GCMP (even though CCMP was
hardcoded elsewhere) cipher suite selector instead of the selected AKM
suite selector. This resulted in incorrect MTK getting derived. Fix this
by used the SAE AKM suite selector in the input to the KDF.

Signed-off-by: Jouni Malinen <j@w1.fi>
Jouni Malinen 8 years ago
parent
commit
0f76d8249c
1 changed files with 2 additions and 2 deletions
  1. 2 2
      wpa_supplicant/mesh_rsn.c

+ 2 - 2
wpa_supplicant/mesh_rsn.c

@@ -425,8 +425,8 @@ int mesh_rsn_derive_mtk(struct wpa_supplicant *wpa_s, struct sta_info *sta)
 	os_memcpy(ptr + lid_len, &max_lid, lid_len);
 	ptr += 2 * lid_len;
 
-	/* SAE */
-	RSN_SELECTOR_PUT(ptr, wpa_cipher_to_suite(0, WPA_CIPHER_GCMP));
+	/* Selected AKM Suite: SAE */
+	RSN_SELECTOR_PUT(ptr, RSN_AUTH_KEY_MGMT_SAE);
 	ptr += 4;
 
 	if (os_memcmp(myaddr, peer, ETH_ALEN) < 0) {