Lines Matching refs:network
3000 struct libipw_network *network = NULL; in ipw_remove_current_network() local
3005 network = list_entry(element, struct libipw_network, list); in ipw_remove_current_network()
3006 if (ether_addr_equal(network->bssid, priv->bssid)) { in ipw_remove_current_network()
3008 list_add_tail(&network->list, in ipw_remove_current_network()
5357 const struct libipw_network *network, in ipw_compatible_rates() argument
5363 num_rates = min(network->rates_len, (u8) IPW_MAX_RATES); in ipw_compatible_rates()
5366 if (!ipw_is_rate_in_mask(priv, network->mode, in ipw_compatible_rates()
5367 network->rates[i])) { in ipw_compatible_rates()
5369 if (network->rates[i] & LIBIPW_BASIC_RATE_MASK) { in ipw_compatible_rates()
5372 network->rates[i]); in ipw_compatible_rates()
5374 network->rates[i]; in ipw_compatible_rates()
5379 network->rates[i], priv->rates_mask); in ipw_compatible_rates()
5383 rates->supported_rates[rates->num_rates++] = network->rates[i]; in ipw_compatible_rates()
5386 num_rates = min(network->rates_ex_len, in ipw_compatible_rates()
5389 if (!ipw_is_rate_in_mask(priv, network->mode, in ipw_compatible_rates()
5390 network->rates_ex[i])) { in ipw_compatible_rates()
5391 if (network->rates_ex[i] & LIBIPW_BASIC_RATE_MASK) { in ipw_compatible_rates()
5394 network->rates_ex[i]); in ipw_compatible_rates()
5396 network->rates[i]; in ipw_compatible_rates()
5401 network->rates_ex[i], priv->rates_mask); in ipw_compatible_rates()
5406 network->rates_ex[i]; in ipw_compatible_rates()
5487 struct libipw_network *network; member
5493 struct libipw_network *network, in ipw_find_adhoc_network() argument
5501 !(network->capability & WLAN_CAPABILITY_IBSS))) { in ipw_find_adhoc_network()
5503 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5504 network->bssid); in ipw_find_adhoc_network()
5511 if ((network->ssid_len != match->network->ssid_len) || in ipw_find_adhoc_network()
5512 memcmp(network->ssid, match->network->ssid, in ipw_find_adhoc_network()
5513 network->ssid_len)) { in ipw_find_adhoc_network()
5515 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5516 network->bssid); in ipw_find_adhoc_network()
5523 ((network->ssid_len != priv->essid_len) || in ipw_find_adhoc_network()
5524 memcmp(network->ssid, priv->essid, in ipw_find_adhoc_network()
5525 min(network->ssid_len, priv->essid_len)))) { in ipw_find_adhoc_network()
5527 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5528 network->bssid, priv->essid_len, in ipw_find_adhoc_network()
5537 if (network->time_stamp[0] < match->network->time_stamp[0]) { in ipw_find_adhoc_network()
5539 match->network->ssid_len, match->network->ssid); in ipw_find_adhoc_network()
5541 } else if (network->time_stamp[1] < match->network->time_stamp[1]) { in ipw_find_adhoc_network()
5543 match->network->ssid_len, match->network->ssid); in ipw_find_adhoc_network()
5549 time_after(jiffies, network->last_scanned + priv->ieee->scan_age)) { in ipw_find_adhoc_network()
5551 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5552 network->bssid, in ipw_find_adhoc_network()
5554 network->last_scanned)); in ipw_find_adhoc_network()
5559 (network->channel != priv->channel)) { in ipw_find_adhoc_network()
5561 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5562 network->bssid, in ipw_find_adhoc_network()
5563 network->channel, priv->channel); in ipw_find_adhoc_network()
5569 ((network->capability & WLAN_CAPABILITY_PRIVACY) ? 1 : 0)) { in ipw_find_adhoc_network()
5571 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5572 network->bssid, in ipw_find_adhoc_network()
5575 network-> in ipw_find_adhoc_network()
5581 if (ether_addr_equal(network->bssid, priv->bssid)) { in ipw_find_adhoc_network()
5583 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5584 network->bssid, priv->bssid); in ipw_find_adhoc_network()
5589 if (!libipw_is_valid_mode(priv->ieee, network->mode)) { in ipw_find_adhoc_network()
5591 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5592 network->bssid); in ipw_find_adhoc_network()
5598 if (!ipw_compatible_rates(priv, network, &rates)) { in ipw_find_adhoc_network()
5600 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5601 network->bssid); in ipw_find_adhoc_network()
5607 network->ssid_len, network->ssid, in ipw_find_adhoc_network()
5608 network->bssid); in ipw_find_adhoc_network()
5618 match->network = network; in ipw_find_adhoc_network()
5620 network->ssid_len, network->ssid, network->bssid); in ipw_find_adhoc_network()
5629 struct libipw_network *network = NULL; in ipw_merge_adhoc_network() local
5631 .network = priv->assoc_network in ipw_merge_adhoc_network()
5641 list_for_each_entry(network, &priv->ieee->network_list, list) { in ipw_merge_adhoc_network()
5642 if (network != priv->assoc_network) in ipw_merge_adhoc_network()
5643 ipw_find_adhoc_network(priv, &match, network, in ipw_merge_adhoc_network()
5648 if (match.network == priv->assoc_network) { in ipw_merge_adhoc_network()
5662 priv->assoc_network = match.network; in ipw_merge_adhoc_network()
5670 struct libipw_network *network, int roaming) in ipw_best_network() argument
5677 !(network->capability & WLAN_CAPABILITY_ESS)) || in ipw_best_network()
5679 !(network->capability & WLAN_CAPABILITY_IBSS))) { in ipw_best_network()
5681 network->ssid_len, network->ssid, in ipw_best_network()
5682 network->bssid); in ipw_best_network()
5689 if ((network->ssid_len != match->network->ssid_len) || in ipw_best_network()
5690 memcmp(network->ssid, match->network->ssid, in ipw_best_network()
5691 network->ssid_len)) { in ipw_best_network()
5693 network->ssid_len, network->ssid, in ipw_best_network()
5694 network->bssid); in ipw_best_network()
5701 ((network->ssid_len != priv->essid_len) || in ipw_best_network()
5702 memcmp(network->ssid, priv->essid, in ipw_best_network()
5703 min(network->ssid_len, priv->essid_len)))) { in ipw_best_network()
5705 network->ssid_len, network->ssid, in ipw_best_network()
5706 network->bssid, priv->essid_len, in ipw_best_network()
5714 if (match->network && match->network->stats.rssi > network->stats.rssi) { in ipw_best_network()
5716 network->ssid_len, network->ssid, in ipw_best_network()
5717 network->bssid, match->network->ssid_len, in ipw_best_network()
5718 match->network->ssid, match->network->bssid); in ipw_best_network()
5724 if (network->last_associate && in ipw_best_network()
5725 time_after(network->last_associate + (HZ * 3UL), jiffies)) { in ipw_best_network()
5727 network->ssid_len, network->ssid, in ipw_best_network()
5728 network->bssid, in ipw_best_network()
5730 network->last_associate)); in ipw_best_network()
5736 time_after(jiffies, network->last_scanned + priv->ieee->scan_age)) { in ipw_best_network()
5738 network->ssid_len, network->ssid, in ipw_best_network()
5739 network->bssid, in ipw_best_network()
5741 network->last_scanned)); in ipw_best_network()
5746 (network->channel != priv->channel)) { in ipw_best_network()
5748 network->ssid_len, network->ssid, in ipw_best_network()
5749 network->bssid, in ipw_best_network()
5750 network->channel, priv->channel); in ipw_best_network()
5756 ((network->capability & WLAN_CAPABILITY_PRIVACY) ? 1 : 0)) { in ipw_best_network()
5758 network->ssid_len, network->ssid, in ipw_best_network()
5759 network->bssid, in ipw_best_network()
5762 network->capability & in ipw_best_network()
5768 !ether_addr_equal(network->bssid, priv->bssid)) { in ipw_best_network()
5770 network->ssid_len, network->ssid, in ipw_best_network()
5771 network->bssid, priv->bssid); in ipw_best_network()
5776 if (!libipw_is_valid_mode(priv->ieee, network->mode)) { in ipw_best_network()
5778 network->ssid_len, network->ssid, in ipw_best_network()
5779 network->bssid); in ipw_best_network()
5784 if (!libipw_is_valid_channel(priv->ieee, network->channel)) { in ipw_best_network()
5786 network->ssid_len, network->ssid, in ipw_best_network()
5787 network->bssid); in ipw_best_network()
5793 if (!ipw_compatible_rates(priv, network, &rates)) { in ipw_best_network()
5795 network->ssid_len, network->ssid, in ipw_best_network()
5796 network->bssid); in ipw_best_network()
5802 network->ssid_len, network->ssid, in ipw_best_network()
5803 network->bssid); in ipw_best_network()
5813 match->network = network; in ipw_best_network()
5816 network->ssid_len, network->ssid, network->bssid); in ipw_best_network()
5822 struct libipw_network *network) in ipw_adhoc_create() argument
5841 network->mode = IEEE_A; in ipw_adhoc_create()
5852 network->mode = IEEE_G; in ipw_adhoc_create()
5854 network->mode = IEEE_B; in ipw_adhoc_create()
5866 network->mode = IEEE_A; in ipw_adhoc_create()
5869 network->mode = IEEE_G; in ipw_adhoc_create()
5872 network->mode = IEEE_B; in ipw_adhoc_create()
5878 network->channel = priv->channel; in ipw_adhoc_create()
5880 ipw_create_bssid(priv, network->bssid); in ipw_adhoc_create()
5881 network->ssid_len = priv->essid_len; in ipw_adhoc_create()
5882 memcpy(network->ssid, priv->essid, priv->essid_len); in ipw_adhoc_create()
5883 memset(&network->stats, 0, sizeof(network->stats)); in ipw_adhoc_create()
5884 network->capability = WLAN_CAPABILITY_IBSS; in ipw_adhoc_create()
5886 network->capability |= WLAN_CAPABILITY_SHORT_PREAMBLE; in ipw_adhoc_create()
5888 network->capability |= WLAN_CAPABILITY_PRIVACY; in ipw_adhoc_create()
5889 network->rates_len = min(priv->rates.num_rates, MAX_RATES_LENGTH); in ipw_adhoc_create()
5890 memcpy(network->rates, priv->rates.supported_rates, network->rates_len); in ipw_adhoc_create()
5891 network->rates_ex_len = priv->rates.num_rates - network->rates_len; in ipw_adhoc_create()
5892 memcpy(network->rates_ex, in ipw_adhoc_create()
5893 &priv->rates.supported_rates[network->rates_len], in ipw_adhoc_create()
5894 network->rates_ex_len); in ipw_adhoc_create()
5895 network->last_scanned = 0; in ipw_adhoc_create()
5896 network->flags = 0; in ipw_adhoc_create()
5897 network->last_associate = 0; in ipw_adhoc_create()
5898 network->time_stamp[0] = 0; in ipw_adhoc_create()
5899 network->time_stamp[1] = 0; in ipw_adhoc_create()
5900 network->beacon_interval = 100; /* Default */ in ipw_adhoc_create()
5901 network->listen_interval = 10; /* Default */ in ipw_adhoc_create()
5902 network->atim_window = 0; /* Default */ in ipw_adhoc_create()
5903 network->wpa_ie_len = 0; in ipw_adhoc_create()
5904 network->rsn_ie_len = 0; in ipw_adhoc_create()
6853 struct libipw_network *network) in ipw_qos_handle_probe_response() argument
6857 if (network->capability & WLAN_CAPABILITY_IBSS) in ipw_qos_handle_probe_response()
6858 network->qos_data.active = network->qos_data.supported; in ipw_qos_handle_probe_response()
6860 if (network->flags & NETWORK_HAS_QOS_MASK) { in ipw_qos_handle_probe_response()
6862 (network->flags & NETWORK_HAS_QOS_PARAMETERS)) in ipw_qos_handle_probe_response()
6863 network->qos_data.active = network->qos_data.supported; in ipw_qos_handle_probe_response()
6865 if ((network->qos_data.active == 1) && (active_network == 1) && in ipw_qos_handle_probe_response()
6866 (network->flags & NETWORK_HAS_QOS_PARAMETERS) && in ipw_qos_handle_probe_response()
6867 (network->qos_data.old_param_count != in ipw_qos_handle_probe_response()
6868 network->qos_data.param_count)) { in ipw_qos_handle_probe_response()
6869 network->qos_data.old_param_count = in ipw_qos_handle_probe_response()
6870 network->qos_data.param_count; in ipw_qos_handle_probe_response()
6876 if ((priv->ieee->mode == IEEE_B) || (network->mode == IEEE_B)) in ipw_qos_handle_probe_response()
6877 memcpy(&network->qos_data.parameters, in ipw_qos_handle_probe_response()
6880 memcpy(&network->qos_data.parameters, in ipw_qos_handle_probe_response()
6883 if ((network->qos_data.active == 1) && (active_network == 1)) { in ipw_qos_handle_probe_response()
6888 network->qos_data.active = 0; in ipw_qos_handle_probe_response()
6889 network->qos_data.supported = 0; in ipw_qos_handle_probe_response()
6893 if (!ether_addr_equal(network->bssid, priv->bssid)) in ipw_qos_handle_probe_response()
6894 if (network->capability & WLAN_CAPABILITY_IBSS) in ipw_qos_handle_probe_response()
6895 if ((network->ssid_len == in ipw_qos_handle_probe_response()
6897 !memcmp(network->ssid, in ipw_qos_handle_probe_response()
6899 network->ssid_len)) { in ipw_qos_handle_probe_response()
7016 struct libipw_network *network) in ipw_qos_association() argument
7027 BUG_ON(!(network->capability & WLAN_CAPABILITY_IBSS)); in ipw_qos_association()
7033 qos_data = &network->qos_data; in ipw_qos_association()
7062 struct libipw_network *network) in ipw_qos_association_resp() argument
7069 if ((priv == NULL) || (network == NULL) || in ipw_qos_association_resp()
7080 if (network->flags & NETWORK_HAS_QOS_PARAMETERS) { in ipw_qos_association_resp()
7081 memcpy(&priv->assoc_network->qos_data, &network->qos_data, in ipw_qos_association_resp()
7084 if ((network->qos_data.old_param_count != in ipw_qos_association_resp()
7085 network->qos_data.param_count)) { in ipw_qos_association_resp()
7087 network->qos_data.old_param_count = in ipw_qos_association_resp()
7088 network->qos_data.param_count; in ipw_qos_association_resp()
7092 if ((network->mode == IEEE_B) || (priv->ieee->mode == IEEE_B)) in ipw_qos_association_resp()
7236 struct libipw_network *network) in ipw_handle_probe_response() argument
7240 (network == priv->assoc_network)); in ipw_handle_probe_response()
7242 ipw_qos_handle_probe_response(priv, active_network, network); in ipw_handle_probe_response()
7249 struct libipw_network *network) in ipw_handle_beacon() argument
7253 (network == priv->assoc_network)); in ipw_handle_beacon()
7255 ipw_qos_handle_probe_response(priv, active_network, network); in ipw_handle_beacon()
7262 struct libipw_network *network) in ipw_handle_assoc_response() argument
7265 ipw_qos_association_resp(priv, network); in ipw_handle_assoc_response()
7286 struct libipw_network *network, in ipw_associate_network() argument
7292 ipw_set_fixed_rate(priv, network->mode); in ipw_associate_network()
7295 priv->essid_len = min(network->ssid_len, in ipw_associate_network()
7297 memcpy(priv->essid, network->ssid, priv->essid_len); in ipw_associate_network()
7300 network->last_associate = jiffies; in ipw_associate_network()
7303 priv->assoc_request.channel = network->channel; in ipw_associate_network()
7331 if (network->mode & priv->ieee->mode & IEEE_A) in ipw_associate_network()
7333 else if (network->mode & priv->ieee->mode & IEEE_G) in ipw_associate_network()
7335 else if (network->mode & priv->ieee->mode & IEEE_B) in ipw_associate_network()
7338 priv->assoc_request.capability = cpu_to_le16(network->capability); in ipw_associate_network()
7339 if ((network->capability & WLAN_CAPABILITY_SHORT_PREAMBLE) in ipw_associate_network()
7358 network->channel, in ipw_associate_network()
7363 network->capability & in ipw_associate_network()
7374 priv->assoc_request.beacon_interval = cpu_to_le16(network->beacon_interval); in ipw_associate_network()
7376 (network->time_stamp[0] == 0) && (network->time_stamp[1] == 0)) { in ipw_associate_network()
7385 priv->assoc_request.assoc_tsf_msw = cpu_to_le32(network->time_stamp[1]); in ipw_associate_network()
7386 priv->assoc_request.assoc_tsf_lsw = cpu_to_le32(network->time_stamp[0]); in ipw_associate_network()
7389 memcpy(priv->assoc_request.bssid, network->bssid, ETH_ALEN); in ipw_associate_network()
7393 priv->assoc_request.atim_window = cpu_to_le16(network->atim_window); in ipw_associate_network()
7395 memcpy(priv->assoc_request.dest, network->bssid, ETH_ALEN); in ipw_associate_network()
7399 priv->assoc_request.listen_interval = cpu_to_le16(network->listen_interval); in ipw_associate_network()
7427 IPW_DEBUG_ASSOC("Association sensitivity: %d\n", network->stats.rssi); in ipw_associate_network()
7428 err = ipw_set_sensitivity(priv, network->stats.rssi + IPW_RSSI_TO_DBM); in ipw_associate_network()
7439 priv->channel = network->channel; in ipw_associate_network()
7440 memcpy(priv->bssid, network->bssid, ETH_ALEN); in ipw_associate_network()
7444 priv->assoc_network = network; in ipw_associate_network()
7447 ipw_qos_association(priv, network); in ipw_associate_network()
7465 struct libipw_network *network = NULL; in ipw_roam() local
7467 .network = priv->assoc_network in ipw_roam()
7500 list_for_each_entry(network, &priv->ieee->network_list, list) { in ipw_roam()
7501 if (network != priv->assoc_network) in ipw_roam()
7502 ipw_best_network(priv, &match, network, 1); in ipw_roam()
7507 if (match.network == priv->assoc_network) { in ipw_roam()
7516 priv->assoc_network = match.network; in ipw_roam()
7540 struct libipw_network *network = NULL; in ipw_associate() local
7542 .network = NULL in ipw_associate()
7579 list_for_each_entry(network, &priv->ieee->network_list, list) in ipw_associate()
7580 ipw_best_network(priv, &match, network, 0); in ipw_associate()
7582 network = match.network; in ipw_associate()
7585 if (network == NULL && in ipw_associate()
7612 network = list_entry(element, struct libipw_network, list); in ipw_associate()
7613 ipw_adhoc_create(priv, network); in ipw_associate()
7616 list_add_tail(&network->list, &priv->ieee->network_list); in ipw_associate()
7622 if (!network) { in ipw_associate()
7636 ipw_associate_network(priv, network, rates, 0); in ipw_associate()