aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/libertas/scan.c
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2007-08-02 13:14:56 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 19:50:10 -0400
commit00af0157e0a603e2a2ce0896179f2dd43f0f28ab (patch)
treeeb622771598202ca1eace8db052076ff38a9f0eb /drivers/net/wireless/libertas/scan.c
parent0edef215e405fef3c6569511a9aebeeb3f6cd799 (diff)
[PATCH] libertas: push mesh beacon bit to userspace in scan results
Signed-off-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/scan.c')
-rw-r--r--drivers/net/wireless/libertas/scan.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/scan.c b/drivers/net/wireless/libertas/scan.c
index 5c730b9d956c..8d4e1ee27395 100644
--- a/drivers/net/wireless/libertas/scan.c
+++ b/drivers/net/wireless/libertas/scan.c
@@ -1334,6 +1334,8 @@ out:
1334 return ret; 1334 return ret;
1335} 1335}
1336 1336
1337#define MAX_CUSTOM_LEN 64
1338
1337static inline char *libertas_translate_scan(wlan_private *priv, 1339static inline char *libertas_translate_scan(wlan_private *priv,
1338 char *start, char *stop, 1340 char *start, char *stop,
1339 struct bss_descriptor *bss) 1341 struct bss_descriptor *bss)
@@ -1467,6 +1469,18 @@ static inline char *libertas_translate_scan(wlan_private *priv,
1467 start = iwe_stream_add_point(start, stop, &iwe, buf); 1469 start = iwe_stream_add_point(start, stop, &iwe, buf);
1468 } 1470 }
1469 1471
1472 if (bss->mesh) {
1473 char custom[MAX_CUSTOM_LEN];
1474 char *p = custom;
1475
1476 iwe.cmd = IWEVCUSTOM;
1477 p += snprintf(p, MAX_CUSTOM_LEN - (p - custom),
1478 "mesh-type: olpc");
1479 iwe.u.data.length = p - custom;
1480 if (iwe.u.data.length)
1481 start = iwe_stream_add_point(start, stop, &iwe, custom);
1482 }
1483
1470 return start; 1484 return start;
1471} 1485}
1472 1486