diff options
Diffstat (limited to 'net/ieee80211/softmac')
-rw-r--r-- | net/ieee80211/softmac/ieee80211softmac_module.c | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/net/ieee80211/softmac/ieee80211softmac_module.c b/net/ieee80211/softmac/ieee80211softmac_module.c index c308756c2f9d..6398e6e67493 100644 --- a/net/ieee80211/softmac/ieee80211softmac_module.c +++ b/net/ieee80211/softmac/ieee80211softmac_module.c | |||
@@ -456,18 +456,13 @@ void | |||
456 | ieee80211softmac_add_network_locked(struct ieee80211softmac_device *mac, | 456 | ieee80211softmac_add_network_locked(struct ieee80211softmac_device *mac, |
457 | struct ieee80211softmac_network *add_net) | 457 | struct ieee80211softmac_network *add_net) |
458 | { | 458 | { |
459 | struct list_head *list_ptr; | 459 | struct ieee80211softmac_network *softmac_net; |
460 | struct ieee80211softmac_network *softmac_net = NULL; | ||
461 | 460 | ||
462 | list_for_each(list_ptr, &mac->network_list) { | 461 | list_for_each_entry(softmac_net, &mac->network_list, list) { |
463 | softmac_net = list_entry(list_ptr, struct ieee80211softmac_network, list); | ||
464 | if(!memcmp(softmac_net->bssid, add_net->bssid, ETH_ALEN)) | 462 | if(!memcmp(softmac_net->bssid, add_net->bssid, ETH_ALEN)) |
465 | break; | 463 | return; |
466 | else | ||
467 | softmac_net = NULL; | ||
468 | } | 464 | } |
469 | if(softmac_net == NULL) | 465 | list_add(&(add_net->list), &mac->network_list); |
470 | list_add(&(add_net->list), &mac->network_list); | ||
471 | } | 466 | } |
472 | 467 | ||
473 | /* Add a network to the list, with locking */ | 468 | /* Add a network to the list, with locking */ |
@@ -506,16 +501,13 @@ struct ieee80211softmac_network * | |||
506 | ieee80211softmac_get_network_by_bssid_locked(struct ieee80211softmac_device *mac, | 501 | ieee80211softmac_get_network_by_bssid_locked(struct ieee80211softmac_device *mac, |
507 | u8 *bssid) | 502 | u8 *bssid) |
508 | { | 503 | { |
509 | struct list_head *list_ptr; | 504 | struct ieee80211softmac_network *softmac_net; |
510 | struct ieee80211softmac_network *softmac_net = NULL; | 505 | |
511 | list_for_each(list_ptr, &mac->network_list) { | 506 | list_for_each_entry(softmac_net, &mac->network_list, list) { |
512 | softmac_net = list_entry(list_ptr, struct ieee80211softmac_network, list); | ||
513 | if(!memcmp(softmac_net->bssid, bssid, ETH_ALEN)) | 507 | if(!memcmp(softmac_net->bssid, bssid, ETH_ALEN)) |
514 | break; | 508 | return softmac_net; |
515 | else | ||
516 | softmac_net = NULL; | ||
517 | } | 509 | } |
518 | return softmac_net; | 510 | return NULL; |
519 | } | 511 | } |
520 | 512 | ||
521 | /* Get a network from the list by BSSID with locking */ | 513 | /* Get a network from the list by BSSID with locking */ |
@@ -537,11 +529,9 @@ struct ieee80211softmac_network * | |||
537 | ieee80211softmac_get_network_by_essid_locked(struct ieee80211softmac_device *mac, | 529 | ieee80211softmac_get_network_by_essid_locked(struct ieee80211softmac_device *mac, |
538 | struct ieee80211softmac_essid *essid) | 530 | struct ieee80211softmac_essid *essid) |
539 | { | 531 | { |
540 | struct list_head *list_ptr; | 532 | struct ieee80211softmac_network *softmac_net; |
541 | struct ieee80211softmac_network *softmac_net = NULL; | ||
542 | 533 | ||
543 | list_for_each(list_ptr, &mac->network_list) { | 534 | list_for_each_entry(softmac_net, &mac->network_list, list) { |
544 | softmac_net = list_entry(list_ptr, struct ieee80211softmac_network, list); | ||
545 | if (softmac_net->essid.len == essid->len && | 535 | if (softmac_net->essid.len == essid->len && |
546 | !memcmp(softmac_net->essid.data, essid->data, essid->len)) | 536 | !memcmp(softmac_net->essid.data, essid->data, essid->len)) |
547 | return softmac_net; | 537 | return softmac_net; |