this function is used by most ath driver, so it can be moved here.
Signed-off-by: Oleksij Rempel <[email protected]>
---
drivers/net/wireless/ath/ath.h | 2 ++
drivers/net/wireless/ath/main.c | 8 ++++++++
2 files changed, 10 insertions(+)
diff --git a/drivers/net/wireless/ath/ath.h b/drivers/net/wireless/ath/ath.h
index e0ba7cd..b59cfbe 100644
--- a/drivers/net/wireless/ath/ath.h
+++ b/drivers/net/wireless/ath/ath.h
@@ -17,6 +17,7 @@
#ifndef ATH_H
#define ATH_H
+#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/if_ether.h>
#include <linux/spinlock.h>
@@ -165,6 +166,7 @@ struct ath_common {
struct sk_buff *ath_rxbuf_alloc(struct ath_common *common,
u32 len,
gfp_t gfp_mask);
+bool ath_is_mybeacon(struct ath_common *common, struct ieee80211_hdr *hdr);
void ath_hw_setbssidmask(struct ath_common *common);
void ath_key_delete(struct ath_common *common, struct ieee80211_key_conf *key);
diff --git a/drivers/net/wireless/ath/main.c b/drivers/net/wireless/ath/main.c
index 8e99540..8b0ac14 100644
--- a/drivers/net/wireless/ath/main.c
+++ b/drivers/net/wireless/ath/main.c
@@ -59,6 +59,14 @@ struct sk_buff *ath_rxbuf_alloc(struct ath_common *common,
}
EXPORT_SYMBOL(ath_rxbuf_alloc);
+bool ath_is_mybeacon(struct ath_common *common, struct ieee80211_hdr *hdr)
+{
+ return ieee80211_is_beacon(hdr->frame_control) &&
+ !is_zero_ether_addr(common->curbssid) &&
+ ether_addr_equal_64bits(hdr->addr3, common->curbssid);
+}
+EXPORT_SYMBOL(ath_is_mybeacon);
+
void ath_printk(const char *level, const struct ath_common* common,
const char *fmt, ...)
{
--
1.8.5.2
Am 16.01.2014 13:09, schrieb Antonio Quartulli:
> On 15/01/14 17:37, Oleksij Rempel wrote:
>> +bool ath_is_mybeacon(struct ath_common *common, struct ieee80211_hdr *hdr);
>>
>
> another late comment: wouldn't it be better is the function was called
> is_my_beacon() instead of is_mybeacon() ?
Right now i see that this check affect almost all wifi driver.
Theoretically it can be placed to some more generic place. Where?
My actual target are these patch set:
https://github.com/olerem/linux-2.6/commits/wifi-ath-common_more
is_my_beacon() is only sight result of it.
--
Regards,
Oleksij
On 15/01/14 17:37, Oleksij Rempel wrote:
> +bool ath_is_mybeacon(struct ath_common *common, struct ieee80211_hdr *hdr);
>
another late comment: wouldn't it be better is the function was called
is_my_beacon() instead of is_mybeacon() ?
Cheers,
--
Antonio Quartulli