--- a/acx_func.h +++ b/acx_func.h @@ -704,9 +704,9 @@ int acx_setup_modes(acx_device_t *adev); 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, --- a/common.c +++ b/common.c @@ -4402,7 +4402,7 @@ static void acx_s_select_opmode(acx_devi } 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 @@ int acx_e_op_add_interface(struct ieee80 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 @@ int acx_e_op_add_interface(struct ieee80 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 @@ int acx_e_op_add_interface(struct ieee80 } 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 @@ void acx_e_op_remove_interface(struct ie 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);