aboutsummaryrefslogtreecommitdiffstats
path: root/epan/crypt/airpdcap.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/crypt/airpdcap.c')
-rw-r--r--epan/crypt/airpdcap.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/epan/crypt/airpdcap.c b/epan/crypt/airpdcap.c
index 4939546b31..1f22fa25ab 100644
--- a/epan/crypt/airpdcap.c
+++ b/epan/crypt/airpdcap.c
@@ -1267,10 +1267,8 @@ AirPDcapRsna4WHandshake(
AIRPDCAP_EAP_ACK(data[offset+1])==0 &&
AIRPDCAP_EAP_MIC(data[offset])==1)
{
- /* Check nonce to differentiate between message 2 or 4
- * nonce will be non zero for message 2 and zero for message 4.
- * At least needed for Windows, since it is setting the secure bit on message 2 when rekeying */
- if (!memiszero(data+offset+12, 32)) {
+ /* Check key data length to differentiate between message 2 or 4, same as in epan/dissectors/packet-ieee80211.c */
+ if (pntoh16(data+offset+92)) {
/* message 2 */
AIRPDCAP_DEBUG_PRINT_LINE("AirPDcapRsna4WHandshake", "4-way handshake message 2", AIRPDCAP_DEBUG_LEVEL_3);