Changeset View
Changeset View
Standalone View
Standalone View
sys/net80211/ieee80211_node.c
Show First 20 Lines • Show All 343 Lines • ▼ Show 20 Lines | ieee80211_create_ibss(struct ieee80211vap* vap, struct ieee80211_channel *chan) | ||||
ni->ni_intval = ic->ic_bintval; | ni->ni_intval = ic->ic_bintval; | ||||
if (vap->iv_flags & IEEE80211_F_PRIVACY) | if (vap->iv_flags & IEEE80211_F_PRIVACY) | ||||
ni->ni_capinfo |= IEEE80211_CAPINFO_PRIVACY; | ni->ni_capinfo |= IEEE80211_CAPINFO_PRIVACY; | ||||
if (ic->ic_phytype == IEEE80211_T_FH) { | if (ic->ic_phytype == IEEE80211_T_FH) { | ||||
ni->ni_fhdwell = 200; /* XXX */ | ni->ni_fhdwell = 200; /* XXX */ | ||||
ni->ni_fhindex = 1; | ni->ni_fhindex = 1; | ||||
} | } | ||||
if (vap->iv_opmode == IEEE80211_M_IBSS) { | if (vap->iv_opmode == IEEE80211_M_IBSS) { | ||||
vap->iv_flags |= IEEE80211_F_SIBSS; | |||||
ni->ni_capinfo |= IEEE80211_CAPINFO_IBSS; /* XXX */ | ni->ni_capinfo |= IEEE80211_CAPINFO_IBSS; /* XXX */ | ||||
if (vap->iv_flags & IEEE80211_F_DESBSSID) | if (vap->iv_flags & IEEE80211_F_DESBSSID) | ||||
IEEE80211_ADDR_COPY(ni->ni_bssid, vap->iv_des_bssid); | IEEE80211_ADDR_COPY(ni->ni_bssid, vap->iv_des_bssid); | ||||
else { | else { | ||||
get_random_bytes(ni->ni_bssid, IEEE80211_ADDR_LEN); | get_random_bytes(ni->ni_bssid, IEEE80211_ADDR_LEN); | ||||
/* clear group bit, add local bit */ | /* clear group bit, add local bit */ | ||||
ni->ni_bssid[0] = (ni->ni_bssid[0] &~ 0x01) | 0x02; | ni->ni_bssid[0] = (ni->ni_bssid[0] &~ 0x01) | 0x02; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 2,698 Lines • Show Last 20 Lines |