author | max <max> | 2003-02-11 00:29:37 (UTC) |
---|---|---|
committer | max <max> | 2003-02-11 00:29:37 (UTC) |
commit | d426759d470699bd4320b23660f19dae639293d6 (patch) (side-by-side diff) | |
tree | e9a0ff886e1b241d920e87ae3115594412a427e3 | |
parent | 0af800b30845a0d3df8be9db5c11c06fd81386e7 (diff) | |
download | opie-d426759d470699bd4320b23660f19dae639293d6.zip opie-d426759d470699bd4320b23660f19dae639293d6.tar.gz opie-d426759d470699bd4320b23660f19dae639293d6.tar.bz2 |
Wlan-ng chanswitch
-rw-r--r-- | noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc index 29dcc75..8c94cb1 100644 --- a/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc +++ b/noncore/net/wellenreiter/libwellenreiter/source/cardmode.cc @@ -40,18 +40,19 @@ int card_into_monitormode (pcap_t **orighandle, char *device, int cardtype) } fputs ("Mode: r",CISCO_CONFIG_FILE); fputs ("Mode: y",CISCO_CONFIG_FILE); fputs ("XmitPower: 1",CISCO_CONFIG_FILE); fclose(CISCO_CONFIG_FILE); } else if (cardtype == CARD_TYPE_NG) { - char wlanngcmd[62]; + char wlanngcmd[80]; snprintf(wlanngcmd, sizeof(wlanngcmd) - 1, "$(which wlanctl-ng) %s lnxreq_wlansniff channel=%d enable=true", device, 1); + printf ("\n %s",wlanngcmd); if (system(wlanngcmd) != 0) { wl_logerr("Could not set %s in raw mode, check cardtype", device); return 0; } } else if (cardtype == CARD_TYPE_HOSTAP) { @@ -156,19 +157,19 @@ int card_set_promisc_up (const char *device) close(fd); return 0; } } /* Set channel (Wireless frequency) of the device */ int card_set_channel (const char *device, int channel, int cardtype) { - if (cardtype == CARD_TYPE_CISCO) + if (cardtype == CARD_TYPE_CISCO || cardtype == CARD_TYPE_NG) { - /* Cisco cards don't need channelswitching */ + /* Cisco and wlan-ng drivers don't need channelswitching */ return 1; } /* If it is a lucent orinocco card */ else if (cardtype == CARD_TYPE_ORINOCCO || cardtype == CARD_TYPE_HOSTAP) { int fd; //Wireless tools structure for the iocalls struct iwreq ireq; @@ -194,23 +195,12 @@ int card_set_channel (const char *device, int channel, int cardtype) else { /* iocall does not work */ close(fd); wl_logerr("Could not set channel %d on %s, check cardtype",channel, device); return 0; } } - else if (cardtype == CARD_TYPE_NG) - { - char wlanngcmd[62]; - snprintf(wlanngcmd, sizeof(wlanngcmd) - 1, "$(which wlanctl-ng) %s lnxreq_wlansniff channel=%d enable=true", device, channel); - if (system(wlanngcmd) != 0) - { - wl_logerr("Could not set channel %d on %s, check cardtype",channel, device); - return 0; - } - - } /* For undefined situations */ return 0; } |