diff options
Diffstat (limited to 'package/acx-mac80211/patches/001-if_init_conf_removal.patch')
-rw-r--r-- | package/acx-mac80211/patches/001-if_init_conf_removal.patch | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/package/acx-mac80211/patches/001-if_init_conf_removal.patch b/package/acx-mac80211/patches/001-if_init_conf_removal.patch new file mode 100644 index 000000000..2e9bc18a1 --- /dev/null +++ b/package/acx-mac80211/patches/001-if_init_conf_removal.patch @@ -0,0 +1,95 @@ +Index: acx-mac80211-20100302/acx_func.h +=================================================================== +--- acx-mac80211-20100302.orig/acx_func.h 2010-03-06 12:57:25.000000000 +0100 ++++ acx-mac80211-20100302/acx_func.h 2010-03-06 12:58:10.000000000 +0100 +@@ -704,9 +704,9 @@ + void acx_free_modes(acx_device_t *adev); + int acx_i_op_tx(struct ieee80211_hw *ieee, struct sk_buff *skb); + int acx_e_op_add_interface(struct ieee80211_hw* ieee, +- struct ieee80211_if_init_conf *conf); ++ struct ieee80211_vif *vif); + void acx_e_op_remove_interface(struct ieee80211_hw* ieee, +- struct ieee80211_if_init_conf *conf); ++ struct ieee80211_vif *vif); + int acx_net_reset(struct ieee80211_hw *ieee); + int acx_e_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, + struct ieee80211_vif *vif, struct ieee80211_sta *sta, +Index: acx-mac80211-20100302/common.c +=================================================================== +--- acx-mac80211-20100302.orig/common.c 2010-03-06 12:57:31.000000000 +0100 ++++ acx-mac80211-20100302/common.c 2010-03-06 12:59:51.000000000 +0100 +@@ -4402,7 +4402,7 @@ + } + + int acx_e_op_add_interface(struct ieee80211_hw *ieee, +- struct ieee80211_if_init_conf *conf) ++ struct ieee80211_vif *vif) + { + acx_device_t *adev = ieee2adev(ieee); + unsigned long flags; +@@ -4414,14 +4414,14 @@ + acx_sem_lock(adev); + acx_lock(adev, flags); + +- if (conf->type == NL80211_IFTYPE_MONITOR) { ++ if (vif->type == NL80211_IFTYPE_MONITOR) { + adev->interface.monitor++; + } else { + if (adev->interface.operating) + goto out_unlock; + adev->interface.operating = 1; +- adev->interface.mac_addr = conf->mac_addr; +- adev->interface.type = conf->type; ++ adev->interface.mac_addr = vif->addr; ++ adev->interface.type = vif->type; + } + // adev->mode = conf->type; + +@@ -4436,8 +4436,8 @@ + + printk(KERN_INFO "acx: Virtual interface added " + "(type: 0x%08X, MAC: %s)\n", +- conf->type, +- acx_print_mac(mac, conf->mac_addr)); ++ vif->type, ++ acx_print_mac(mac, vif->addr)); + + out_unlock: + acx_unlock(adev, flags); +@@ -4448,7 +4448,7 @@ + } + + void acx_e_op_remove_interface(struct ieee80211_hw *hw, +- struct ieee80211_if_init_conf *conf) ++ struct ieee80211_vif *vif) + { + acx_device_t *adev = ieee2adev(hw); + +@@ -4457,23 +4457,23 @@ + FN_ENTER; + acx_sem_lock(adev); + +- if (conf->type == NL80211_IFTYPE_MONITOR) { ++ if (vif->type == NL80211_IFTYPE_MONITOR) { + adev->interface.monitor--; + // assert(bcm->interface.monitor >= 0); + } else { + adev->interface.operating = 0; + } + +- log(L_DEBUG, "acx: %s: interface.operating=%d, conf->type=%d\n", ++ log(L_DEBUG, "acx: %s: interface.operating=%d, vif->type=%d\n", + __func__, +- adev->interface.operating, conf->type); ++ adev->interface.operating, vif->type); + + if (adev->initialized) + acx_s_select_opmode(adev); + + log(L_ANY, "acx: Virtual interface removed: " + "type=%d, MAC=%s\n", +- conf->type, acx_print_mac(mac, conf->mac_addr)); ++ vif->type, acx_print_mac(mac, vif->addr)); + + acx_sem_unlock(adev); + |