summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/daemon/source/daemon.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/noncore/net/wellenreiter/daemon/source/daemon.cc b/noncore/net/wellenreiter/daemon/source/daemon.cc
index 46a50ed..d77d987 100644
--- a/noncore/net/wellenreiter/daemon/source/daemon.cc
+++ b/noncore/net/wellenreiter/daemon/source/daemon.cc
@@ -166,11 +166,20 @@ void *
channel_switcher(void *cardtypeptr)
{
wl_cardtype_t *cardtype;
+ int maxchan=0;
int channel=1;
-
/* Get card info struct */
cardtype = (wl_cardtype_t *)cardtypeptr;
-
+ /* Get from the wireless extension the amount of available channels
+ this prevents a fail in switching on us cards */
+ maxchan = card_detect_channels(cardtype->iface);
+
+ if (maxchan < MAXCHANNEL)
+ {
+ #undef MAXCHANNEL
+ #define MAXCHANNEL maxchan
+ }
+
while(1)
{