summaryrefslogtreecommitdiff
path: root/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
authormjm <mjm>2002-11-28 00:00:52 (UTC)
committer mjm <mjm>2002-11-28 00:00:52 (UTC)
commit27fe94d8aec5ffff56b39eb89b0e36f2b1c229ed (patch) (unidiff)
tree0e56faeb0dce9717b86b1d08b88ff17c6df902df /noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
parent3d3add0a024d650d6247108ed6a19c11efd63724 (diff)
downloadopie-27fe94d8aec5ffff56b39eb89b0e36f2b1c229ed.zip
opie-27fe94d8aec5ffff56b39eb89b0e36f2b1c229ed.tar.gz
opie-27fe94d8aec5ffff56b39eb89b0e36f2b1c229ed.tar.bz2
moved handlesettings for pcap temporary to daemon.cc
Diffstat (limited to 'noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc32
1 files changed, 3 insertions, 29 deletions
diff --git a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
index a9b3276..a1c3945 100644
--- a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
+++ b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc
@@ -7,15 +7,11 @@
7#include "cardmode.hh" 7#include "cardmode.hh"
8 8
9/* main card into monitor function */ 9/* main card into monitor function */
10int card_into_monitormode (void *orighandle, char *device, int cardtype) 10int card_into_monitormode (pcap_t **orighandle, char *device, int cardtype)
11{ 11{
12 int datalink; /* used for getting the pcap datalink type */
13 char CiscoRFMON[35] = "/proc/driver/aironet/"; 12 char CiscoRFMON[35] = "/proc/driver/aironet/";
14 FILE *CISCO_CONFIG_FILE; 13 FILE *CISCO_CONFIG_FILE;
15 char errbuf[PCAP_ERRBUF_SIZE]; 14 pcap_t *handle = (pcap_t*)orighandle;
16 pcap_t *handle;
17
18 handle = (pcap_t *)orighandle;
19 15
20 /* Checks if we have a device to sniff on */ 16 /* Checks if we have a device to sniff on */
21 if(device == NULL) 17 if(device == NULL)
@@ -62,28 +58,6 @@ int card_into_monitormode (void *orighandle, char *device, int cardtype)
62 wl_logerr("Got a host-ap card, nothing is implemented now"); 58 wl_logerr("Got a host-ap card, nothing is implemented now");
63 } 59 }
64 60
65 /* Check the interface if it is in the correct raw mode */
66 if((handle = pcap_open_live(device, BUFSIZ, 1, 0, errbuf)) == NULL)
67 {
68 wl_logerr("pcap_open_live() failed: %s", strerror(errno));
69 return 0;
70 }
71
72#ifdef HAVE_PCAP_NONBLOCK
73 pcap_setnonblock(handle, 1, errstr);
74#endif
75
76 /* getting the datalink type */
77 datalink = pcap_datalink(handle);
78
79 if (datalink != DLT_IEEE802_11) /* Rawmode is IEEE802_11 */
80 {
81 wl_loginfo("Interface %s does not work in the correct 802.11 raw mode", device);
82 pcap_close(handle);
83 return 0;
84 }
85 wl_loginfo("Your successfully listen on %s in 802.11 raw mode", device);
86
87 return 1; 61 return 1;
88} 62}
89 63
@@ -96,7 +70,7 @@ int card_set_promisc_up (const char *device)
96 snprintf(ifconfigcmd, sizeof(ifconfigcmd), SBIN_PATH, device); 70 snprintf(ifconfigcmd, sizeof(ifconfigcmd), SBIN_PATH, device);
97 retval = system(ifconfigcmd); 71 retval = system(ifconfigcmd);
98 72
99 if(retval < 0 || retval == 1) 73 if(retval != 0)
100 return 0; 74 return 0;
101 75
102return 1; 76return 1;