-rw-r--r-- | noncore/net/wellenreiter/gui/wellenreiter.cpp | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/noncore/net/wellenreiter/gui/wellenreiter.cpp b/noncore/net/wellenreiter/gui/wellenreiter.cpp index 448b52b..79734a2 100644 --- a/noncore/net/wellenreiter/gui/wellenreiter.cpp +++ b/noncore/net/wellenreiter/gui/wellenreiter.cpp @@ -442,72 +442,81 @@ void Wellenreiter::startClicked() { // start timer for reading packets startTimer( 100 ); } logwindow->log( "(i) Started Scanning." ); sniffing = true; emit( startedSniffing() ); if ( cardtype != DEVTYPE_FILE ) channelHopped( 6 ); // set title else { assert( parent() ); ( (QMainWindow*) parent() )->setCaption( tr( "Wellenreiter II - replaying capture file..." ) ); } } void Wellenreiter::timerEvent( QTimerEvent* ) { qDebug( "Wellenreiter::timerEvent()" ); OPacket* p = pcap->next(); if ( !p ) // no more packets available { stopClicked(); } else { receivePacket( p ); delete p; } } void Wellenreiter::doAction( const QString& action, const QString& protocol, OPacket* p ) { if ( action == "TouchSound" ) ODevice::inst()->touchSound(); else if ( action == "AlarmSound" ) ODevice::inst()->alarmSound(); else if ( action == "KeySound" ) ODevice::inst()->keySound(); else if ( action == "LedOn" ) ODevice::inst()->setLedState( Led_Mail, Led_On ); else if ( action == "LedOff" ) ODevice::inst()->setLedState( Led_Mail, Led_Off ); else if ( action == "LogMessage" ) logwindow->log( QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) ); else if ( action == "MessageBox" ) - QMessageBox::information ( this, "Notification!", + QMessageBox::information( this, "Notification!", QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) ); } void Wellenreiter::joinNetwork(const QString& type, const QString& essid, int channel, const QString& macaddr) { - // we need the interface too: - const QString iface = "wlan0"; - qDebug( "joinNetwork() - %s, %s, %d, %s", + if ( !iface ) + { + QMessageBox::warning( this, tr( "Can't do that!" ), tr( "No wireless\ninterface available." ) ); + return; + } + + if ( sniffing ) + { + QMessageBox::warning( this, tr( "Can't do that!" ), tr( "Stop sniffing before\njoining a net." ) ); + return; + } + + qDebug( "joinNetwork() with Interface %s: %s, %s, %d, %s", + (const char*) iface->name(), (const char*) type, (const char*) essid, channel, (const char*) macaddr ); - // TODO: Stop scanning here - QCopEnvelope msg( "QPE/Application/networksettings", "wlan(QString,QString,QString)" ); - msg << iface << QString("Mode") << type; - msg << iface << QString("ESSID") << essid; - msg << iface << QString("Channel") << channel; - msg << iface << QString("MacAddr") << macaddr; + msg << iface->name() << QString("Mode") << type; + msg << iface->name() << QString("ESSID") << essid; + msg << iface->name() << QString("Channel") << channel; + msg << iface->name() << QString("MacAddr") << macaddr; } |