mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2025-05-04 07:47:27 +02:00
peap: accept EAP type 33 as termination mechanism for PEAPv1
EAP Extensions type 33 is used in PEAPv0 as a termination mechanism for the tunneled EAP methods. In PEAPv1 the regular EAP-Success/Failure packets must be used to terminate the method. Some of the server implementations of PEAPv1 rely on EAP Extensions method to terminate the conversation instead of the required Success/Failure packets. This patch makes iwd interoperable with such devices.
This commit is contained in:
parent
397bf9c0bd
commit
958bd12624
@ -361,8 +361,6 @@ static void eap_peap_phase2_handle_request(struct eap_state *eap,
|
|||||||
size_t len)
|
size_t len)
|
||||||
{
|
{
|
||||||
struct eap_peap_state *peap = eap_get_data(eap);
|
struct eap_peap_state *peap = eap_get_data(eap);
|
||||||
|
|
||||||
if (peap->version == PEAP_VERSION_0) {
|
|
||||||
uint8_t id;
|
uint8_t id;
|
||||||
|
|
||||||
if (len > 4 && pkt[4] == EAP_TYPE_EXTENSIONS) {
|
if (len > 4 && pkt[4] == EAP_TYPE_EXTENSIONS) {
|
||||||
@ -385,6 +383,7 @@ static void eap_peap_phase2_handle_request(struct eap_state *eap,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (peap->version == PEAP_VERSION_0) {
|
||||||
if (len < 1)
|
if (len < 1)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user