Changeset View
Changeset View
Standalone View
Standalone View
sys/net80211/ieee80211_ddb.c
Show First 20 Lines • Show All 230 Lines • ▼ Show 20 Lines | for (i = 0; i < IEEE80211_AGGR_BAWMAX; i++) | ||||
} | } | ||||
} | } | ||||
static void | static void | ||||
_db_show_sta(const struct ieee80211_node *ni) | _db_show_sta(const struct ieee80211_node *ni) | ||||
{ | { | ||||
int i; | int i; | ||||
db_printf("%p: mac %s refcnt %d\n", ni, | db_printf("STA: %p: mac %s refcnt %d\n", ni, | ||||
ether_sprintf(ni->ni_macaddr), ieee80211_node_refcnt(ni)); | ether_sprintf(ni->ni_macaddr), ieee80211_node_refcnt(ni)); | ||||
db_printf("\tvap %p wdsvap %p ic %p table %p\n", | db_printf("\tvap %p wdsvap %p ic %p table %p\n", | ||||
ni->ni_vap, ni->ni_wdsvap, ni->ni_ic, ni->ni_table); | ni->ni_vap, ni->ni_wdsvap, ni->ni_ic, ni->ni_table); | ||||
db_printf("\tflags=%b\n", ni->ni_flags, IEEE80211_NODE_BITS); | db_printf("\tflags=%b\n", ni->ni_flags, IEEE80211_NODE_BITS); | ||||
db_printf("\tauthmode %u ath_flags 0x%x ath_defkeyix %u\n", | db_printf("\tauthmode %u ath_flags 0x%x ath_defkeyix %u\n", | ||||
ni->ni_authmode, ni->ni_ath_flags, ni->ni_ath_defkeyix); | ni->ni_authmode, ni->ni_ath_flags, ni->ni_ath_defkeyix); | ||||
db_printf("\tassocid 0x%x txpower %u vlan %u\n", | db_printf("\tassocid 0x%x txpower %u vlan %u\n", | ||||
ni->ni_associd, ni->ni_txpower, ni->ni_vlan); | ni->ni_associd, ni->ni_txpower, ni->ni_vlan); | ||||
db_printf("\tjointime %d (%lu secs) challenge %p\n", | db_printf("\tjointime %d (%lu secs) challenge %p\n", | ||||
ni->ni_jointime, (unsigned long)(time_uptime - ni->ni_jointime), | ni->ni_jointime, (unsigned long)(time_uptime - ni->ni_jointime), | ||||
ni->ni_challenge); | ni->ni_challenge); | ||||
db_printf("\ties: data %p len %d\n", ni->ni_ies.data, ni->ni_ies.len); | db_printf("\ties: data %p len %d\n", ni->ni_ies.data, ni->ni_ies.len); | ||||
db_printf("\t[wpa_ie %p rsn_ie %p wme_ie %p ath_ie %p\n", | db_printf("\t[wpa_ie %p rsn_ie %p wme_ie %p ath_ie %p\n", | ||||
ni->ni_ies.wpa_ie, ni->ni_ies.rsn_ie, ni->ni_ies.wme_ie, | ni->ni_ies.wpa_ie, ni->ni_ies.rsn_ie, ni->ni_ies.wme_ie, | ||||
ni->ni_ies.ath_ie); | ni->ni_ies.ath_ie); | ||||
db_printf("\t htcap_ie %p htinfo_ie %p]\n", | db_printf("\t htcap_ie %p htinfo_ie %p]\n", | ||||
ni->ni_ies.htcap_ie, ni->ni_ies.htinfo_ie); | ni->ni_ies.htcap_ie, ni->ni_ies.htinfo_ie); | ||||
db_printf("\t vhtcap_ie %p vhtopmode_ie %p vhtpwrenv_ie %p]\n", | |||||
ni->ni_ies.vhtcap_ie, ni->ni_ies.vhtopmode_ie, | |||||
ni->ni_ies.vhtpwrenv_ie); | |||||
if (ni->ni_flags & IEEE80211_NODE_QOS) { | if (ni->ni_flags & IEEE80211_NODE_QOS) { | ||||
for (i = 0; i < WME_NUM_TID; i++) { | for (i = 0; i < WME_NUM_TID; i++) { | ||||
if (ni->ni_txseqs[i] || ni->ni_rxseqs[i]) | if (ni->ni_txseqs[i] || ni->ni_rxseqs[i]) | ||||
db_printf("\t[%u] txseq %u rxseq %u fragno %u\n", | db_printf("\t[%u] txseq %u rxseq %u fragno %u\n", | ||||
i, ni->ni_txseqs[i], | i, ni->ni_txseqs[i], | ||||
ni->ni_rxseqs[i] >> IEEE80211_SEQ_SEQ_SHIFT, | ni->ni_rxseqs[i] >> IEEE80211_SEQ_SEQ_SHIFT, | ||||
ni->ni_rxseqs[i] & IEEE80211_SEQ_FRAG_MASK); | ni->ni_rxseqs[i] & IEEE80211_SEQ_FRAG_MASK); | ||||
} | } | ||||
} | } | ||||
db_printf("\ttxseq %u rxseq %u fragno %u rxfragstamp %u\n", | db_printf("\ttxseq %u rxseq %u fragno %u rxfragstamp %u\n", | ||||
ni->ni_txseqs[IEEE80211_NONQOS_TID], | ni->ni_txseqs[IEEE80211_NONQOS_TID], | ||||
ni->ni_rxseqs[IEEE80211_NONQOS_TID] >> IEEE80211_SEQ_SEQ_SHIFT, | ni->ni_rxseqs[IEEE80211_NONQOS_TID] >> IEEE80211_SEQ_SEQ_SHIFT, | ||||
ni->ni_rxseqs[IEEE80211_NONQOS_TID] & IEEE80211_SEQ_FRAG_MASK, | ni->ni_rxseqs[IEEE80211_NONQOS_TID] & IEEE80211_SEQ_FRAG_MASK, | ||||
ni->ni_rxfragstamp); | ni->ni_rxfragstamp); | ||||
db_printf("\trxfrag[0] %p rxfrag[1] %p rxfrag[2] %p\n", | db_printf("\trxfrag[0] %p rxfrag[1] %p rxfrag[2] %p\n", | ||||
ni->ni_rxfrag[0], ni->ni_rxfrag[1], ni->ni_rxfrag[2]); | ni->ni_rxfrag[0], ni->ni_rxfrag[1], ni->ni_rxfrag[2]); | ||||
_db_show_key("\tucastkey", 0, &ni->ni_ucastkey); | _db_show_key("\tucastkey", 0, &ni->ni_ucastkey); | ||||
Show All 28 Lines | _db_show_sta(const struct ieee80211_node *ni) | ||||
db_printf("\tinact %u inact_reload %u txrate %u\n", | db_printf("\tinact %u inact_reload %u txrate %u\n", | ||||
ni->ni_inact, ni->ni_inact_reload, ni->ni_txrate); | ni->ni_inact, ni->ni_inact_reload, ni->ni_txrate); | ||||
#ifdef IEEE80211_SUPPORT_MESH | #ifdef IEEE80211_SUPPORT_MESH | ||||
_db_show_ssid("\tmeshid ", 0, ni->ni_meshidlen, ni->ni_meshid); | _db_show_ssid("\tmeshid ", 0, ni->ni_meshidlen, ni->ni_meshid); | ||||
db_printf(" mlstate %b mllid 0x%x mlpid 0x%x mlrcnt %u mltval %u\n", | db_printf(" mlstate %b mllid 0x%x mlpid 0x%x mlrcnt %u mltval %u\n", | ||||
ni->ni_mlstate, IEEE80211_MESH_MLSTATE_BITS, | ni->ni_mlstate, IEEE80211_MESH_MLSTATE_BITS, | ||||
ni->ni_mllid, ni->ni_mlpid, ni->ni_mlrcnt, ni->ni_mltval); | ni->ni_mllid, ni->ni_mlpid, ni->ni_mlrcnt, ni->ni_mltval); | ||||
#endif | #endif | ||||
/* VHT state */ | |||||
db_printf("\tvhtcap %b vht_basicmcs %#06x vht_pad2 %#06x\n", | |||||
ni->ni_vhtcap, IEEE80211_VHTCAP_BITS, | |||||
ni->ni_vht_basicmcs, ni->ni_vht_pad2); | |||||
db_printf("\tvht_mcsinfo: { rx_mcs_map %#06x rx_highest %#06x " | |||||
"tx_mcs_map %#06x tx_highest %#06x }\n", | |||||
ni->ni_vht_mcsinfo.rx_mcs_map, ni->ni_vht_mcsinfo.rx_highest, | |||||
ni->ni_vht_mcsinfo.tx_mcs_map, ni->ni_vht_mcsinfo.tx_highest); | |||||
db_printf("\tvht_chan1/chan2 %u/%u vht_chanwidth %#04x\n", | |||||
ni->ni_vht_chan1, ni->ni_vht_chan2, ni->ni_vht_chanwidth); | |||||
db_printf("\tvht_pad1 %#04x vht_spare { %#x %#x %#x %#x %#x %#x %#x %#x }\n", | |||||
ni->ni_vht_pad1, ni->ni_vht_spare[0], ni->ni_vht_spare[1], | |||||
ni->ni_vht_spare[2], ni->ni_vht_spare[3], ni->ni_vht_spare[4], | |||||
ni->ni_vht_spare[5], ni->ni_vht_spare[6], ni->ni_vht_spare[7]); | |||||
} | } | ||||
#ifdef IEEE80211_SUPPORT_TDMA | #ifdef IEEE80211_SUPPORT_TDMA | ||||
static void | static void | ||||
_db_show_tdma(const char *sep, const struct ieee80211_tdma_state *ts, int showprocs) | _db_show_tdma(const char *sep, const struct ieee80211_tdma_state *ts, int showprocs) | ||||
{ | { | ||||
db_printf("%stdma %p:\n", sep, ts); | db_printf("%stdma %p:\n", sep, ts); | ||||
db_printf("%s version %u slot %u bintval %u peer %p\n", sep, | db_printf("%s version %u slot %u bintval %u peer %p\n", sep, | ||||
Show All 11 Lines | |||||
#endif /* IEEE80211_SUPPORT_TDMA */ | #endif /* IEEE80211_SUPPORT_TDMA */ | ||||
static void | static void | ||||
_db_show_vap(const struct ieee80211vap *vap, int showmesh, int showprocs) | _db_show_vap(const struct ieee80211vap *vap, int showmesh, int showprocs) | ||||
{ | { | ||||
const struct ieee80211com *ic = vap->iv_ic; | const struct ieee80211com *ic = vap->iv_ic; | ||||
int i; | int i; | ||||
db_printf("%p:", vap); | db_printf("VAP %p:", vap); | ||||
db_printf(" bss %p", vap->iv_bss); | db_printf(" bss %p", vap->iv_bss); | ||||
db_printf(" myaddr %s", ether_sprintf(vap->iv_myaddr)); | db_printf(" myaddr %s", ether_sprintf(vap->iv_myaddr)); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
db_printf("\topmode %s", ieee80211_opmode_name[vap->iv_opmode]); | db_printf("\topmode %s", ieee80211_opmode_name[vap->iv_opmode]); | ||||
#ifdef IEEE80211_SUPPORT_MESH | #ifdef IEEE80211_SUPPORT_MESH | ||||
if (vap->iv_opmode == IEEE80211_M_MBSS) | if (vap->iv_opmode == IEEE80211_M_MBSS) | ||||
db_printf("(%p)", vap->iv_mesh); | db_printf("(%p)", vap->iv_mesh); | ||||
Show All 13 Lines | #endif | ||||
db_printf("\tdebug=%b\n", vap->iv_debug, IEEE80211_MSG_BITS); | db_printf("\tdebug=%b\n", vap->iv_debug, IEEE80211_MSG_BITS); | ||||
db_printf("\tflags=%b\n", vap->iv_flags, IEEE80211_F_BITS); | db_printf("\tflags=%b\n", vap->iv_flags, IEEE80211_F_BITS); | ||||
db_printf("\tflags_ext=%b\n", vap->iv_flags_ext, IEEE80211_FEXT_BITS); | db_printf("\tflags_ext=%b\n", vap->iv_flags_ext, IEEE80211_FEXT_BITS); | ||||
db_printf("\tflags_ht=%b\n", vap->iv_flags_ht, IEEE80211_FHT_BITS); | db_printf("\tflags_ht=%b\n", vap->iv_flags_ht, IEEE80211_FHT_BITS); | ||||
db_printf("\tflags_ven=%b\n", vap->iv_flags_ven, IEEE80211_FVEN_BITS); | db_printf("\tflags_ven=%b\n", vap->iv_flags_ven, IEEE80211_FVEN_BITS); | ||||
db_printf("\tcaps=%b\n", vap->iv_caps, IEEE80211_C_BITS); | db_printf("\tcaps=%b\n", vap->iv_caps, IEEE80211_C_BITS); | ||||
db_printf("\thtcaps=%b\n", vap->iv_htcaps, IEEE80211_C_HTCAP_BITS); | db_printf("\thtcaps=%b\n", vap->iv_htcaps, IEEE80211_C_HTCAP_BITS); | ||||
db_printf("\tvhtcaps=%b\n", vap->iv_vhtcaps, IEEE80211_VHTCAP_BITS); | |||||
_db_show_stats(&vap->iv_stats); | _db_show_stats(&vap->iv_stats); | ||||
db_printf("\tinact_init %d", vap->iv_inact_init); | db_printf("\tinact_init %d", vap->iv_inact_init); | ||||
db_printf(" inact_auth %d", vap->iv_inact_auth); | db_printf(" inact_auth %d", vap->iv_inact_auth); | ||||
db_printf(" inact_run %d", vap->iv_inact_run); | db_printf(" inact_run %d", vap->iv_inact_run); | ||||
db_printf(" inact_probe %d", vap->iv_inact_probe); | db_printf(" inact_probe %d", vap->iv_inact_probe); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
▲ Show 20 Lines • Show All 138 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
static void | static void | ||||
_db_show_com(const struct ieee80211com *ic, int showvaps, int showsta, | _db_show_com(const struct ieee80211com *ic, int showvaps, int showsta, | ||||
int showmesh, int showprocs) | int showmesh, int showprocs) | ||||
{ | { | ||||
struct ieee80211vap *vap; | struct ieee80211vap *vap; | ||||
db_printf("%p:", ic); | db_printf("COM: %p:", ic); | ||||
TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) | TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) | ||||
db_printf(" %s(%p)", vap->iv_ifp->if_xname, vap); | db_printf(" %s(%p)", vap->iv_ifp->if_xname, vap); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
db_printf("\tsoftc %p", ic->ic_softc); | db_printf("\tsoftc %p", ic->ic_softc); | ||||
db_printf("\tname %s", ic->ic_name); | db_printf("\tname %s", ic->ic_name); | ||||
db_printf(" comlock %p", &ic->ic_comlock); | db_printf(" comlock %p", &ic->ic_comlock); | ||||
db_printf(" txlock %p", &ic->ic_txlock); | db_printf(" txlock %p", &ic->ic_txlock); | ||||
db_printf(" fflock %p", &ic->ic_fflock); | db_printf(" fflock %p", &ic->ic_fflock); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
db_printf("\theadroom %d", ic->ic_headroom); | db_printf("\theadroom %d", ic->ic_headroom); | ||||
db_printf(" phytype %d", ic->ic_phytype); | db_printf(" phytype %d", ic->ic_phytype); | ||||
db_printf(" opmode %s", ieee80211_opmode_name[ic->ic_opmode]); | db_printf(" opmode %s", ieee80211_opmode_name[ic->ic_opmode]); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
db_printf(" inact %p", &ic->ic_inact); | db_printf(" inact %p", &ic->ic_inact); | ||||
db_printf("\n"); | db_printf("\n"); | ||||
db_printf("\tflags=%b\n", ic->ic_flags, IEEE80211_F_BITS); | db_printf("\tflags=%b\n", ic->ic_flags, IEEE80211_F_BITS); | ||||
db_printf("\tflags_ext=%b\n", ic->ic_flags_ext, IEEE80211_FEXT_BITS); | db_printf("\tflags_ext=%b\n", ic->ic_flags_ext, IEEE80211_FEXT_BITS); | ||||
db_printf("\tflags_ht=%b\n", ic->ic_flags_ht, IEEE80211_FHT_BITS); | db_printf("\tflags_ht=%b\n", ic->ic_flags_ht, IEEE80211_FHT_BITS); | ||||
db_printf("\tflags_ven=%b\n", ic->ic_flags_ven, IEEE80211_FVEN_BITS); | db_printf("\tflags_ven=%b\n", ic->ic_flags_ven, IEEE80211_FVEN_BITS); | ||||
db_printf("\tcaps=%b\n", ic->ic_caps, IEEE80211_C_BITS); | db_printf("\tcaps=%b\n", ic->ic_caps, IEEE80211_C_BITS); | ||||
db_printf("\tcryptocaps=%b\n", | db_printf("\tcryptocaps=%b\n", | ||||
ic->ic_cryptocaps, IEEE80211_CRYPTO_BITS); | ic->ic_cryptocaps, IEEE80211_CRYPTO_BITS); | ||||
db_printf("\thtcaps=%b\n", ic->ic_htcaps, IEEE80211_HTCAP_BITS); | db_printf("\thtcaps=%b\n", ic->ic_htcaps, IEEE80211_HTCAP_BITS); | ||||
db_printf("\tvhtcaps=%b\n", ic->ic_vhtcaps, IEEE80211_VHTCAP_BITS); | |||||
#if 0 | #if 0 | ||||
uint8_t ic_modecaps[2]; /* set of mode capabilities */ | uint8_t ic_modecaps[2]; /* set of mode capabilities */ | ||||
#endif | #endif | ||||
db_printf("\tcurmode %u", ic->ic_curmode); | db_printf("\tcurmode %u", ic->ic_curmode); | ||||
db_printf(" promisc %u", ic->ic_promisc); | db_printf(" promisc %u", ic->ic_promisc); | ||||
db_printf(" allmulti %u", ic->ic_allmulti); | db_printf(" allmulti %u", ic->ic_allmulti); | ||||
db_printf(" nrunning %u", ic->ic_nrunning); | db_printf(" nrunning %u", ic->ic_nrunning); | ||||
▲ Show 20 Lines • Show All 353 Lines • Show Last 20 Lines |