OLD | NEW |
1 /* | 1 /* |
2 * mac80211_hwsim - software simulator of 802.11 radio(s) for mac80211 | 2 * mac80211_hwsim - software simulator of 802.11 radio(s) for mac80211 |
3 * Copyright (c) 2008, Jouni Malinen <j@w1.fi> | 3 * Copyright (c) 2008, Jouni Malinen <j@w1.fi> |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
8 */ | 8 */ |
9 | 9 |
10 /* | 10 /* |
(...skipping 468 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
479 static bool mac80211_hwsim_tx_frame(struct ieee80211_hw *hw, | 479 static bool mac80211_hwsim_tx_frame(struct ieee80211_hw *hw, |
480 struct sk_buff *skb) | 480 struct sk_buff *skb) |
481 { | 481 { |
482 struct mac80211_hwsim_data *data = hw->priv, *data2; | 482 struct mac80211_hwsim_data *data = hw->priv, *data2; |
483 bool ack = false; | 483 bool ack = false; |
484 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data; | 484 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data; |
485 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); | 485 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); |
486 struct ieee80211_rx_status rx_status; | 486 struct ieee80211_rx_status rx_status; |
487 | 487 |
488 if (data->idle) { | 488 if (data->idle) { |
489 » » wiphy_debug(hw->wiphy, "trying to tx when idle - reject\n"); | 489 » » wiphy_debug(hw->wiphy, "Trying to TX when idle - reject\n"); |
490 return false; | 490 return false; |
491 } | 491 } |
492 | 492 |
493 memset(&rx_status, 0, sizeof(rx_status)); | 493 memset(&rx_status, 0, sizeof(rx_status)); |
494 /* TODO: set mactime */ | 494 /* TODO: set mactime */ |
495 rx_status.freq = data->channel->center_freq; | 495 rx_status.freq = data->channel->center_freq; |
496 rx_status.band = data->channel->band; | 496 rx_status.band = data->channel->band; |
497 rx_status.rate_idx = info->control.rates[0].idx; | 497 rx_status.rate_idx = info->control.rates[0].idx; |
498 /* TODO: simulate real signal strength (and optional packet loss) */ | 498 /* TODO: simulate real signal strength (and optional packet loss) */ |
499 rx_status.signal = -50; | 499 rx_status.signal = -50; |
(...skipping 1024 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1524 { | 1524 { |
1525 printk(KERN_DEBUG "mac80211_hwsim: unregister radios\n"); | 1525 printk(KERN_DEBUG "mac80211_hwsim: unregister radios\n"); |
1526 | 1526 |
1527 mac80211_hwsim_free(); | 1527 mac80211_hwsim_free(); |
1528 unregister_netdev(hwsim_mon); | 1528 unregister_netdev(hwsim_mon); |
1529 } | 1529 } |
1530 | 1530 |
1531 | 1531 |
1532 module_init(init_mac80211_hwsim); | 1532 module_init(init_mac80211_hwsim); |
1533 module_exit(exit_mac80211_hwsim); | 1533 module_exit(exit_mac80211_hwsim); |
OLD | NEW |