Lines 744-750
wl_cfg80211_join_ibss(struct wiphy *wiph
Link Here
|
744 |
else |
744 |
else |
745 |
memset(&join_params.params.bssid, 0, ETHER_ADDR_LEN); |
745 |
memset(&join_params.params.bssid, 0, ETHER_ADDR_LEN); |
746 |
|
746 |
|
747 |
wl_ch_to_chanspec(params->channel, &join_params, &join_params_size); |
747 |
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) |
|
|
748 |
wl_ch_to_chanspec(params->channel, &join_params, &join_params_size); |
749 |
#else |
750 |
wl_ch_to_chanspec(params->chandef.chan, &join_params, &join_params_size); |
751 |
#endif |
748 |
|
752 |
|
749 |
err = wl_dev_ioctl(dev, WLC_SET_SSID, &join_params, join_params_size); |
753 |
err = wl_dev_ioctl(dev, WLC_SET_SSID, &join_params, join_params_size); |
750 |
if (err) { |
754 |
if (err) { |
Lines 2047-2055
static s32 wl_update_bss_info(struct wl_
Link Here
|
2047 |
struct bcm_tlv *tim; |
2051 |
struct bcm_tlv *tim; |
2048 |
u16 beacon_interval; |
2052 |
u16 beacon_interval; |
2049 |
s32 dtim_period; |
2053 |
s32 dtim_period; |
2050 |
size_t ie_len; |
|
|
2051 |
u8 *ie; |
2052 |
s32 err = 0; |
2054 |
s32 err = 0; |
|
|
2055 |
size_t ie_len; |
2056 |
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) |
2057 |
u8 *ie; |
2058 |
#else |
2059 |
const u8 *ie; |
2060 |
const struct cfg80211_bss_ies *ies; |
2061 |
#endif |
2053 |
|
2062 |
|
2054 |
ssid = &wl->profile->ssid; |
2063 |
ssid = &wl->profile->ssid; |
2055 |
bss = cfg80211_get_bss(wl_to_wiphy(wl), NULL, (s8 *)&wl->bssid, |
2064 |
bss = cfg80211_get_bss(wl_to_wiphy(wl), NULL, (s8 *)&wl->bssid, |
Lines 2079-2086
static s32 wl_update_bss_info(struct wl_
Link Here
|
2079 |
beacon_interval = cpu_to_le16(bi->beacon_period); |
2088 |
beacon_interval = cpu_to_le16(bi->beacon_period); |
2080 |
} else { |
2089 |
} else { |
2081 |
WL_DBG(("Found the AP in the list - BSSID %pM\n", bss->bssid)); |
2090 |
WL_DBG(("Found the AP in the list - BSSID %pM\n", bss->bssid)); |
2082 |
ie = bss->information_elements; |
2091 |
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0) |
2083 |
ie_len = bss->len_information_elements; |
2092 |
ie = bss->information_elements; |
|
|
2093 |
ie_len = bss->len_information_elements; |
2094 |
#else |
2095 |
rcu_read_lock(); |
2096 |
ies = (const struct cfg80211_bss_ies*)rcu_dereference(bss->ies); |
2097 |
if (!ies) { |
2098 |
/* This should never happen */ |
2099 |
rcu_read_unlock(); |
2100 |
err = -EIO; |
2101 |
goto update_bss_info_out; |
2102 |
} |
2103 |
ie = ies->data; |
2104 |
ie_len = (size_t)(ies->len); |
2105 |
rcu_read_unlock(); |
2106 |
#endif |
2084 |
beacon_interval = bss->beacon_interval; |
2107 |
beacon_interval = bss->beacon_interval; |
2085 |
cfg80211_put_bss(bss); |
2108 |
cfg80211_put_bss(bss); |
2086 |
} |
2109 |
} |