diff --git a/tools/ath_info.c b/tools/ath_info.c index d684009..b40399f 100644 --- a/tools/ath_info.c +++ b/tools/ath_info.c @@ -805,7 +805,7 @@ void keycache_dump(void *mem) #define AR5K_KEYTABLE_VALID 0x00008000 int i, keylen; - u_int32_t val0, val1, val2, val3, val4, keytype, mac0, mac1; + u_int32_t val0, val1, val2, val3, val4, keytype, kt, mac0, mac1; /* dump all 128 entries */ printf("Dumping keycache entries...\n"); @@ -818,6 +818,8 @@ void keycache_dump(void *mem) val3 = AR5K_REG_READ(AR5K_KEYTABLE_OFF(i,3)); val4 = AR5K_REG_READ(AR5K_KEYTABLE_OFF(i,4)); keytype = AR5K_REG_READ(AR5K_KEYTABLE_OFF(i,5)); + kt = keytype & 8; + keytype &= ~8; switch (keytype) { case 0: /* WEP40 */ keylen = 40 / 8; break; case 1: /* WEP104 */ keylen = 104 / 8; break; @@ -839,7 +841,7 @@ void keycache_dump(void *mem) keytype == 5 ? "AES" : "", keytype == 6 ? "CCM" : "", keytype == 7 ? "NULL" : "", - keytype == 8 ? "ANTENNA" : "", + kt == 8 ? "+ANT" : "", ((mac0 << 1) & 0xff), ((mac0 >> 7) & 0xff), ((mac0 >> 15) & 0xff),