|
@@ -782,6 +782,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret,
|
|
|
tot_len = WPA_GET_BE16(pos);
|
|
|
wpa_printf(MSG_DEBUG, "EAP-pwd: Incoming fragments whose "
|
|
|
"total length = %d", tot_len);
|
|
|
+ if (tot_len > 15000)
|
|
|
+ return NULL;
|
|
|
data->inbuf = wpabuf_alloc(tot_len);
|
|
|
if (data->inbuf == NULL) {
|
|
|
wpa_printf(MSG_INFO, "Out of memory to buffer "
|