summaryrefslogtreecommitdiff
path: root/net/bsd-airtools/files/patch-dstumbler::main.c
diff options
context:
space:
mode:
authorSean Chittenden <seanc@FreeBSD.org>2003-07-21 20:36:48 +0000
committerSean Chittenden <seanc@FreeBSD.org>2003-07-21 20:36:48 +0000
commit4276ab7cd08d444a77f8bacc703339293f96f058 (patch)
treef633906e43e3322c047236dc5965a3cfc2b62646 /net/bsd-airtools/files/patch-dstumbler::main.c
parentChase MASTER_SITES. (diff)
In an attempt to get dstumbler functioning on -CURRENT, I'm committing a few
patches that have been sent in thus far. dstumbler now reports the APs, but isn't able to monitor them on my Netgear 401, however, others have reported success so I'm committing them. Please keep me posted if things are or aren't working. I no longer have a -STABLE box to test these on and haven't tested this with sam's monitoring mode changes from last night, so, things may be working correctly now, and/or -STABLE may be broken. In either case, please let me know. Submitted by: sam, bms
Notes
Notes: svn path=/head/; revision=85320
Diffstat (limited to 'net/bsd-airtools/files/patch-dstumbler::main.c')
-rw-r--r--net/bsd-airtools/files/patch-dstumbler::main.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/net/bsd-airtools/files/patch-dstumbler::main.c b/net/bsd-airtools/files/patch-dstumbler::main.c
new file mode 100644
index 000000000000..abdeda1376e8
--- /dev/null
+++ b/net/bsd-airtools/files/patch-dstumbler::main.c
@@ -0,0 +1,50 @@
+--- dstumbler/main.c.orig Tue Feb 26 01:16:07 2002
++++ dstumbler/main.c Mon Jul 21 13:26:23 2003
+@@ -177,12 +177,24 @@
+ /*
+ * start the input/output handling loop
+ */
+-#define SETMONCHAN() \
+- if(monmode && chanlock && (apchange || apnew))\
+- {\
+- ch = aps[(aps_new && autosel) ? aps_new : aps_cur]->chan;\
+- setdebugchan(iface, ch);\
++
++static void __inline
++SETMONCHAN(const char *iface)
++{
++ if (monmode && chanlock && (apchange || apnew))
++ {
++ int apidx = (aps_new && autosel) ? aps_new : aps_cur;
++ /*
++ * Don't set the channel if no IBSS/ESSes have been
++ * discovered yet.
++ */
++ if (aps[apidx] != NULL) {
++ ch = aps[apidx]->chan;
++ setdebugchan(iface, ch);
++ }
+ }
++}
++
+ void
+ start_loop(const char *iface)
+ {
+@@ -271,7 +283,7 @@
+ */
+ if(monmode && mon_next(iface) == -1)
+ {
+- SETMONCHAN();
++ SETMONCHAN(iface);
+ smart_redraw();
+ continue;
+ }
+@@ -279,7 +291,7 @@
+ parse_ap(iface);
+ parse_node(iface);
+
+- SETMONCHAN();
++ SETMONCHAN(iface);
+ smart_redraw();
+
+ apchange = apnew = 0;