summaryrefslogtreecommitdiff
authormax <max>2003-02-07 17:17:35 (UTC)
committer max <max>2003-02-07 17:17:35 (UTC)
commit014608882b23343473c5d0e7dca3ea09cf02dcfb (patch) (unidiff)
tree90eac99cbb0faca581cc9b5cc37a9fd460548050
parenta14c5974339f5beef433754d52c952cb99834619 (diff)
downloadopie-014608882b23343473c5d0e7dca3ea09cf02dcfb.zip
opie-014608882b23343473c5d0e7dca3ea09cf02dcfb.tar.gz
opie-014608882b23343473c5d0e7dca3ea09cf02dcfb.tar.bz2
Chanswitch
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/daemon/source/daemon.cc26
-rw-r--r--noncore/net/wellenreiter/daemon/source/daemon.hh1
-rw-r--r--noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc9
3 files changed, 25 insertions, 11 deletions
diff --git a/noncore/net/wellenreiter/daemon/source/daemon.cc b/noncore/net/wellenreiter/daemon/source/daemon.cc
index d6e8f6b..b57e6a0 100644
--- a/noncore/net/wellenreiter/daemon/source/daemon.cc
+++ b/noncore/net/wellenreiter/daemon/source/daemon.cc
@@ -11,2 +11,3 @@
11#define MAXCHANNEL 13 11#define MAXCHANNEL 13
12int card_type;
12char sniffer_device[6]; 13char sniffer_device[6];
@@ -15,8 +16,15 @@ int timedout=1;
15 16
16static int chanswitch() 17void chanswitch(int blah)
17{ 18{
18 if(channel >= MAXCHANNEL) 19 if(channel >= MAXCHANNEL)
19 channel=1 20 {
21 channel=1;
22 }
23 else
24 {
25 channel++;
26 }
20 card_set_channel(sniffer_device, channel, card_type); 27 card_set_channel(sniffer_device, channel, card_type);
21 timedout=0; 28 timedout=0;
29 alarm(1);
22} 30}
@@ -26,3 +34,3 @@ int main(int argc, char **argv)
26{ 34{
27 int sock, maxfd, retval, card_type; 35 int sock, maxfd, retval;
28 char buffer[WL_SOCKBUF]; 36 char buffer[WL_SOCKBUF];
@@ -42,4 +50,4 @@ int main(int argc, char **argv)
42 // removed soon, see above 50 // removed soon, see above
43 SIGNAL(SIGALRM, chanswitch); 51 signal(SIGALRM, chanswitch);
44 52 alarm(1);
45 /* Set sniffer device */ 53 /* Set sniffer device */
@@ -50,3 +58,3 @@ int main(int argc, char **argv)
50 card_type = atoi(argv[2]); 58 card_type = atoi(argv[2]);
51 if(card_type < 1 || card_type > 3) 59 if(card_type < 1 || card_type > 4)
52 usage(); 60 usage();
@@ -93,3 +101,2 @@ int main(int argc, char **argv)
93 timedout=1; 101 timedout=1;
94 alarm(1);
95 102
@@ -152,5 +159,6 @@ void usage(void)
152 "\t<device> = Wirelessdevice (e.g. wlan0)\n" \ 159 "\t<device> = Wirelessdevice (e.g. wlan0)\n" \
153 "\t<cardtype> = Cardtype:\t Cisco\t= 1\n" \ 160 "\t<cardtype> = Cardtype:\tCisco\t= 1\n" \
154 "\t\t\t\tNG\t= 2\n" \ 161 "\t\t\t\tNG\t= 2\n" \
155 "\t\t\t\tHOSTAP\t= 3\n"); 162 "\t\t\t\tHOSTAP\t= 3\n" \
163 "\t\t\t\tLUCENT\t= 4\n");
156 exit(-1); 164 exit(-1);
diff --git a/noncore/net/wellenreiter/daemon/source/daemon.hh b/noncore/net/wellenreiter/daemon/source/daemon.hh
index 1cc3c7c..d50487a 100644
--- a/noncore/net/wellenreiter/daemon/source/daemon.hh
+++ b/noncore/net/wellenreiter/daemon/source/daemon.hh
@@ -14,2 +14,3 @@
14#include <errno.h> 14#include <errno.h>
15#include <signal.h>
15 16
diff --git a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
index 697d182..0c23922 100644
--- a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
+++ b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
@@ -75,2 +75,6 @@ int card_into_monitormode (pcap_t **orighandle, char *device, int cardtype)
75 } 75 }
76 else
77 {
78 wl_loginfo("Successfully set %s into raw mode",device);
79 }
76 } 80 }
@@ -158,3 +162,2 @@ int card_set_channel (const char *device, int channel, int cardtype)
158{ 162{
159
160 if (cardtype == CARD_TYPE_CISCO) 163 if (cardtype == CARD_TYPE_CISCO)
@@ -169,3 +172,3 @@ int card_set_channel (const char *device, int channel, int cardtype)
169 char lucentcmd[62]; 172 char lucentcmd[62];
170 snprintf(lucentreset, sizeof(lucentreset) -1,"$(which iwpriv) %s card_reset", device); 173 snprintf(lucentreset, sizeof(lucentreset) -1,"$(which iwpriv) %s force_reset", device);
171 if (system(lucentreset) != 0) 174 if (system(lucentreset) != 0)
@@ -181,2 +184,4 @@ int card_set_channel (const char *device, int channel, int cardtype)
181 } 184 }
185 wl_loginfo("Channel %d set on interface %s",channel,device);
186 return 1;
182 } 187 }