Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/iwn/if_iwn.c
Show First 20 Lines • Show All 7,146 Lines • ▼ Show 20 Lines | #endif | ||||
/* | /* | ||||
* Build a probe request frame. Most of the following code is a | * Build a probe request frame. Most of the following code is a | ||||
* copy & paste of what is done in net80211. | * copy & paste of what is done in net80211. | ||||
*/ | */ | ||||
wh = (struct ieee80211_frame *)(essid + 20); | wh = (struct ieee80211_frame *)(essid + 20); | ||||
wh->i_fc[0] = IEEE80211_FC0_VERSION_0 | IEEE80211_FC0_TYPE_MGT | | wh->i_fc[0] = IEEE80211_FC0_VERSION_0 | IEEE80211_FC0_TYPE_MGT | | ||||
IEEE80211_FC0_SUBTYPE_PROBE_REQ; | IEEE80211_FC0_SUBTYPE_PROBE_REQ; | ||||
wh->i_fc[1] = IEEE80211_FC1_DIR_NODS; | wh->i_fc[1] = IEEE80211_FC1_DIR_NODS; | ||||
IEEE80211_ADDR_COPY(wh->i_addr1, vap->iv_ifp->if_broadcastaddr); | IEEE80211_ADDR_COPY(wh->i_addr1, if_getbroadcastaddr(vap->iv_ifp)); | ||||
IEEE80211_ADDR_COPY(wh->i_addr2, IF_LLADDR(vap->iv_ifp)); | IEEE80211_ADDR_COPY(wh->i_addr2, if_getlladdr(vap->iv_ifp)); | ||||
IEEE80211_ADDR_COPY(wh->i_addr3, vap->iv_ifp->if_broadcastaddr); | IEEE80211_ADDR_COPY(wh->i_addr3, if_getbroadcastaddr(vap->iv_ifp)); | ||||
*(uint16_t *)&wh->i_dur[0] = 0; /* filled by HW */ | *(uint16_t *)&wh->i_dur[0] = 0; /* filled by HW */ | ||||
*(uint16_t *)&wh->i_seq[0] = 0; /* filled by HW */ | *(uint16_t *)&wh->i_seq[0] = 0; /* filled by HW */ | ||||
frm = (uint8_t *)(wh + 1); | frm = (uint8_t *)(wh + 1); | ||||
frm = ieee80211_add_ssid(frm, NULL, 0); | frm = ieee80211_add_ssid(frm, NULL, 0); | ||||
frm = ieee80211_add_rates(frm, rs); | frm = ieee80211_add_rates(frm, rs); | ||||
if (rs->rs_nrates > IEEE80211_RATE_SIZE) | if (rs->rs_nrates > IEEE80211_RATE_SIZE) | ||||
frm = ieee80211_add_xrates(frm, rs); | frm = ieee80211_add_xrates(frm, rs); | ||||
▲ Show 20 Lines • Show All 2,076 Lines • Show Last 20 Lines |