@@ -2309,6 +2309,10 @@ for(zeigerpmkid = zeigerpmkidakt; zeigerpmkid < pmkidlistptr; zeigerpmkid++)
2309
2309
{
2310
2310
tvhs = zeigerpmkid -> timestamp /1000000000 ;
2311
2311
strftime (timestringhs , 32 , "%d.%m.%Y %H:%M:%S" , localtime (& tvhs ));
2312
+ if (((zeigerpmkid -> status & PMKID_APPSK256 ) == PMKID_APPSK256 ) && ((zeigermac -> akm & TAK_PSKSHA256 ) != TAK_PSKSHA256 ))
2313
+ {
2314
+ if (ignoreieflag == false) continue ;
2315
+ }
2312
2316
if (donotcleanflag == false)
2313
2317
{
2314
2318
if (memcmp (& mac_broadcast , zeigerpmkid -> client , 6 ) == 0 ) continue ;
@@ -3881,7 +3885,7 @@ if(authlen >= (int)(WPAKEY_SIZE +PMKID_SIZE))
3881
3885
{
3882
3886
pmkid = (pmkid_t * )(wpakptr + WPAKEY_SIZE );
3883
3887
if (pmkid -> id != TAG_VENDOR ) return ;
3884
- if ((pmkid -> len == 0x14 ) && (pmkid -> type == 0x04 ) && keyver != 3 )
3888
+ if ((pmkid -> len == 0x14 ) && (pmkid -> type == 0x04 ))
3885
3889
{
3886
3890
zeiger -> message |= HS_PMKID ;
3887
3891
if (memcmp (& zeroed32 , pmkid -> pmkid , 16 ) == 0 )
@@ -3906,7 +3910,8 @@ if(authlen >= (int)(WPAKEY_SIZE +PMKID_SIZE))
3906
3910
}
3907
3911
}
3908
3912
memcpy (zeiger -> pmkid , pmkid -> pmkid , 16 );
3909
- addpmkid (eaptimestamp , macclient , macsrc , pmkid -> pmkid , PMKID_AP );
3913
+ if (keyver != 3 ) addpmkid (eaptimestamp , macclient , macsrc , pmkid -> pmkid , PMKID_AP );
3914
+ else addpmkid (eaptimestamp , macclient , macsrc , pmkid -> pmkid , PMKID_AP | PMKID_APPSK256 );
3910
3915
}
3911
3916
}
3912
3917
else pmkiduselesscount ++ ;
0 commit comments