Parcourir la source

mka: Fix length when encoding SAK-use

The room we actually use is length. This could also mess up the
receiver, since it will advance by the actual length (as indicated by
the parameter body's length), which could differ from the offset at
which we stored the next item.

Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Sabrina Dubroca il y a 8 ans
Parent
commit
12447457bf
1 fichiers modifiés avec 1 ajouts et 1 suppressions
  1. 1 1
      src/pae/ieee802_1x_kay.c

+ 1 - 1
src/pae/ieee802_1x_kay.c

@@ -1156,7 +1156,7 @@ ieee802_1x_mka_encode_sak_use_body(
 	u32 pn = 1;
 
 	length = ieee802_1x_mka_get_sak_use_length(participant);
-	body = wpabuf_put(buf, sizeof(struct ieee802_1x_mka_sak_use_body));
+	body = wpabuf_put(buf, length);
 
 	body->type = MKA_SAK_USE;
 	set_mka_param_body_len(body, length - MKA_HDR_LEN);