forked from luck/tmp_suning_uos_patched
libertas: don't depend on IEEE80211
Runtime-wise we only need escape_ssid from the deprecated IEEE80211 subsystem. However, it's easy to provide our own copy. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
f539f2efe9
commit
04850a47aa
@ -271,7 +271,6 @@ config LIBERTAS
|
||||
tristate "Marvell 8xxx Libertas WLAN driver support"
|
||||
depends on WLAN_80211
|
||||
select WIRELESS_EXT
|
||||
select IEEE80211
|
||||
select FW_LOADER
|
||||
---help---
|
||||
A library for Marvell Libertas 8xxx devices.
|
||||
|
@ -71,4 +71,9 @@ int lbs_stop_card(struct lbs_private *priv);
|
||||
void lbs_host_to_card_done(struct lbs_private *priv);
|
||||
|
||||
int lbs_update_channel(struct lbs_private *priv);
|
||||
|
||||
#ifndef CONFIG_IEEE80211
|
||||
const char *escape_essid(const char *essid, u8 essid_len);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -1559,6 +1559,32 @@ static int lbs_add_rtap(struct lbs_private *priv)
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifndef CONFIG_IEEE80211
|
||||
const char *escape_essid(const char *essid, u8 essid_len)
|
||||
{
|
||||
static char escaped[IW_ESSID_MAX_SIZE * 2 + 1];
|
||||
const char *s = essid;
|
||||
char *d = escaped;
|
||||
|
||||
if (ieee80211_is_empty_essid(essid, essid_len)) {
|
||||
memcpy(escaped, "<hidden>", sizeof("<hidden>"));
|
||||
return escaped;
|
||||
}
|
||||
|
||||
essid_len = min(essid_len, (u8) IW_ESSID_MAX_SIZE);
|
||||
while (essid_len--) {
|
||||
if (*s == '\0') {
|
||||
*d++ = '\\';
|
||||
*d++ = '0';
|
||||
s++;
|
||||
} else {
|
||||
*d++ = *s++;
|
||||
}
|
||||
}
|
||||
*d = '\0';
|
||||
return escaped;
|
||||
}
|
||||
#endif
|
||||
|
||||
module_init(lbs_init_module);
|
||||
module_exit(lbs_exit_module);
|
||||
|
Loading…
Reference in New Issue
Block a user