e6830c544abb391828b833556f8f8c84a932c1bf
[openwrt/svn-archive/archive.git] / package / acx-mac80211 / patches / 004-acx_config_interface_type.patch
1 diff -urN acx-mac80211-20080805/acx_func.h acx-mac80211-20080805.new/acx_func.h
2 --- acx-mac80211-20080805/acx_func.h 2009-05-07 14:32:44.000000000 +0200
3 +++ acx-mac80211-20080805.new/acx_func.h 2009-05-07 16:28:17.000000000 +0200
4 @@ -619,9 +619,10 @@
5 enum set_key_cmd cmd,
6 const u8 *local_addr, const u8 *addr,
7 struct ieee80211_key_conf *key);
8 -extern int acx_config_interface(struct ieee80211_hw* ieee,
9 +void acx_config_interface(struct ieee80211_hw* ieee,
10 struct ieee80211_vif *vif,
11 - struct ieee80211_if_conf *conf);
12 + struct ieee80211_bss_conf *info,
13 + u32 changes);
14 int acx_net_config(struct ieee80211_hw* ieee, struct ieee80211_conf *conf);
15 int acx_net_get_tx_stats(struct ieee80211_hw* ieee, struct ieee80211_tx_queue_stats *stats);
16 int acx_net_conf_tx(struct ieee80211_hw* ieee, u16 queue,
17 diff -urN acx-mac80211-20080805/common.c acx-mac80211-20080805.new/common.c
18 --- acx-mac80211-20080805/common.c 2009-05-07 16:20:37.000000000 +0200
19 +++ acx-mac80211-20080805.new/common.c 2009-05-07 16:35:55.000000000 +0200
20 @@ -4364,9 +4364,10 @@
21 **
22 */
23
24 -extern int acx_config_interface(struct ieee80211_hw* ieee,
25 +void acx_config_interface(struct ieee80211_hw* ieee,
26 struct ieee80211_vif *vif,
27 - struct ieee80211_if_conf *conf)
28 + struct ieee80211_bss_conf *info,
29 + u32 changes)
30 {
31 acx_device_t *adev = ieee2adev(ieee);
32 unsigned long flags;
33 @@ -4382,22 +4383,22 @@
34
35 if ((vif->type != NL80211_IFTYPE_MONITOR)
36 && (adev->vif == vif)) {
37 - if (conf->bssid)
38 + if (info->bssid)
39 {
40 - adev->interface.bssid = conf->bssid;
41 - MAC_COPY(adev->bssid,conf->bssid);
42 + adev->interface.bssid = info->bssid;
43 + MAC_COPY(adev->bssid, info->bssid);
44 }
45 }
46 if ((vif->type == NL80211_IFTYPE_AP)
47 && (adev->vif == vif)) {
48 - if ((conf->ssid_len > 0) && conf->ssid)
49 + if (info->bssid)
50 {
51 - adev->essid_len = conf->ssid_len;
52 - memcpy(adev->essid, conf->ssid, conf->ssid_len);
53 + adev->essid_len = ETH_ALEN;
54 + memcpy(adev->essid, info->bssid, ETH_ALEN);
55 SET_BIT(adev->set_mask, SET_TEMPLATES);
56 }
57 }
58 - if (conf->changed & IEEE80211_IFCC_BEACON)
59 + if (changes & BSS_CHANGED_BSSID)
60 {
61 adev->beacon_interval = DEFAULT_BEACON_INTERVAL;
62 adev->beacon_cache = ieee80211_beacon_get(ieee, vif);
63 @@ -4412,7 +4413,7 @@
64 err = 0;
65 err_out:
66 FN_EXIT1(err);
67 - return err;
68 + return;
69 }
70
71 /**
72 diff -urN acx-mac80211-20080805/pci.c acx-mac80211-20080805.new/pci.c
73 --- acx-mac80211-20080805/pci.c 2009-05-07 14:32:44.000000000 +0200
74 +++ acx-mac80211-20080805.new/pci.c 2009-05-07 16:27:27.000000000 +0200
75 @@ -1469,7 +1469,7 @@
76 .configure_filter = acx_i_set_multicast_list,
77 .stop = acxpci_e_close,
78 .config = acx_net_config,
79 - .config_interface = acx_config_interface,
80 + .bss_info_changed = acx_config_interface,
81 .set_key = acx_net_set_key,
82 .get_stats = acx_e_get_stats,
83 .get_tx_stats = acx_net_get_tx_stats,
84 diff -urN acx-mac80211-20080805/usb.c acx-mac80211-20080805.new/usb.c
85 --- acx-mac80211-20080805/usb.c 2009-05-07 14:32:44.000000000 +0200
86 +++ acx-mac80211-20080805.new/usb.c 2009-05-07 16:27:38.000000000 +0200
87 @@ -741,7 +741,7 @@
88 .configure_filter = acx_i_set_multicast_list,
89 .stop = acxusb_e_close,
90 .config = acx_net_config,
91 - .config_interface = acx_config_interface,
92 + .bss_info_changed = acx_config_interface,
93 .set_key = acx_net_set_key,
94 .get_stats = acx_e_get_stats,
95 .get_tx_stats = acx_net_get_tx_stats,