sc_lastrs is also used in case the sending station is not known, for

example in a split IBSS scenario. Therefore always assign sc_lastrs.
This removes a hack I committed in r206457.

Approved by:	rpaulo (mentor)
This commit is contained in:
bschmidt 2010-06-14 08:24:00 +00:00
parent c8e17adfdc
commit 6586564ab7

View File

@ -3654,14 +3654,8 @@ ath_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m,
case IEEE80211_FC0_SUBTYPE_PROBE_RESP:
if (vap->iv_opmode == IEEE80211_M_IBSS &&
vap->iv_state == IEEE80211_S_RUN) {
uint32_t rstamp;
uint64_t tsf;
if (sc->sc_lastrs == NULL)
break;
rstamp = sc->sc_lastrs->rs_tstamp;
tsf = ath_extend_tsf(rstamp,
uint32_t rstamp = sc->sc_lastrs->rs_tstamp;
uint64_t tsf = ath_extend_tsf(rstamp,
ath_hal_gettsf64(sc->sc_ah));
/*
* Handle ibss merge as needed; check the tsf on the
@ -4002,11 +3996,11 @@ ath_rx_proc(void *arg, int npending)
mtod(m, const struct ieee80211_frame_min *),
rs->rs_keyix == HAL_RXKEYIX_INVALID ?
IEEE80211_KEYIX_NONE : rs->rs_keyix);
sc->sc_lastrs = rs;
if (ni != NULL) {
/*
* Sending station is known, dispatch directly.
*/
sc->sc_lastrs = rs;
type = ieee80211_input(ni, m, rs->rs_rssi, nf);
ieee80211_free_node(ni);
/*