summaryrefslogtreecommitdiff
authormickeyl <mickeyl>2003-06-16 17:23:39 (UTC)
committer mickeyl <mickeyl>2003-06-16 17:23:39 (UTC)
commit9574bc74f6240a060f941ef65028a51e8969fe06 (patch) (unidiff)
treed2f64e32e1c520f5d15769a364805c70bdd32d75
parent020c6d76b3faad399164ba196c51804221a259e1 (diff)
downloadopie-9574bc74f6240a060f941ef65028a51e8969fe06.zip
opie-9574bc74f6240a060f941ef65028a51e8969fe06.tar.gz
opie-9574bc74f6240a060f941ef65028a51e8969fe06.tar.bz2
sanity check and providing the interface for the qcop call
tille: we no longer match the qcop-signature - is this a problem?
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/gui/wellenreiter.cpp29
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
@@ -394,120 +394,129 @@ void Wellenreiter::startClicked()
394 return; 394 return;
395 } 395 }
396 } 396 }
397 397
398 // open pcap and start sniffing 398 // open pcap and start sniffing
399 if ( cardtype != DEVTYPE_FILE ) 399 if ( cardtype != DEVTYPE_FILE )
400 { 400 {
401 pcap->open( interface ); 401 pcap->open( interface );
402 402
403 if ( configwindow->writeCaptureFile->isOn() ) 403 if ( configwindow->writeCaptureFile->isOn() )
404 { 404 {
405 QString dumpname( configwindow->captureFileName->text() ); 405 QString dumpname( configwindow->captureFileName->text() );
406 dumpname.append( '-' ); 406 dumpname.append( '-' );
407 dumpname.append( QTime::currentTime().toString().replace( QRegExp( ":" ), "-" ) ); 407 dumpname.append( QTime::currentTime().toString().replace( QRegExp( ":" ), "-" ) );
408 dumpname.append( ".wellenreiter" ); 408 dumpname.append( ".wellenreiter" );
409 pcap->openDumpFile( dumpname ); 409 pcap->openDumpFile( dumpname );
410 } 410 }
411 else 411 else
412 { 412 {
413 pcap->open( interface ); 413 pcap->open( interface );
414 } 414 }
415 } 415 }
416 else 416 else
417 { 417 {
418 pcap->open( QFile( interface ) ); 418 pcap->open( QFile( interface ) );
419 } 419 }
420 420
421 if ( !pcap->isOpen() ) 421 if ( !pcap->isOpen() )
422 { 422 {
423 QMessageBox::warning( this, "Wellenreiter II", 423 QMessageBox::warning( this, "Wellenreiter II",
424 tr( "Can't open packet capturer for '%1':\n" ).arg( iface->name() ) + QString(strerror( errno ) )); 424 tr( "Can't open packet capturer for '%1':\n" ).arg( iface->name() ) + QString(strerror( errno ) ));
425 return; 425 return;
426 } 426 }
427 427
428 // set capturer to non-blocking mode 428 // set capturer to non-blocking mode
429 pcap->setBlocking( false ); 429 pcap->setBlocking( false );
430 430
431 // start channel hopper 431 // start channel hopper
432 if ( cardtype != DEVTYPE_FILE ) 432 if ( cardtype != DEVTYPE_FILE )
433 iface->setChannelHopping( 1000 ); //use interval from config window 433 iface->setChannelHopping( 1000 ); //use interval from config window
434 434
435 if ( cardtype != DEVTYPE_FILE ) 435 if ( cardtype != DEVTYPE_FILE )
436 { 436 {
437 // connect socket notifier and start channel hopper 437 // connect socket notifier and start channel hopper
438 connect( pcap, SIGNAL( receivedPacket(OPacket*) ), this, SLOT( receivePacket(OPacket*) ) ); 438 connect( pcap, SIGNAL( receivedPacket(OPacket*) ), this, SLOT( receivePacket(OPacket*) ) );
439 connect( iface->channelHopper(), SIGNAL( hopped(int) ), this, SLOT( channelHopped(int) ) ); 439 connect( iface->channelHopper(), SIGNAL( hopped(int) ), this, SLOT( channelHopped(int) ) );
440 } 440 }
441 else 441 else
442 { 442 {
443 // start timer for reading packets 443 // start timer for reading packets
444 startTimer( 100 ); 444 startTimer( 100 );
445 } 445 }
446 446
447 logwindow->log( "(i) Started Scanning." ); 447 logwindow->log( "(i) Started Scanning." );
448 sniffing = true; 448 sniffing = true;
449 emit( startedSniffing() ); 449 emit( startedSniffing() );
450 if ( cardtype != DEVTYPE_FILE ) channelHopped( 6 ); // set title 450 if ( cardtype != DEVTYPE_FILE ) channelHopped( 6 ); // set title
451 else 451 else
452 { 452 {
453 assert( parent() ); 453 assert( parent() );
454 ( (QMainWindow*) parent() )->setCaption( tr( "Wellenreiter II - replaying capture file..." ) ); 454 ( (QMainWindow*) parent() )->setCaption( tr( "Wellenreiter II - replaying capture file..." ) );
455 } 455 }
456} 456}
457 457
458 458
459void Wellenreiter::timerEvent( QTimerEvent* ) 459void Wellenreiter::timerEvent( QTimerEvent* )
460{ 460{
461 qDebug( "Wellenreiter::timerEvent()" ); 461 qDebug( "Wellenreiter::timerEvent()" );
462 OPacket* p = pcap->next(); 462 OPacket* p = pcap->next();
463 if ( !p ) // no more packets available 463 if ( !p ) // no more packets available
464 { 464 {
465 stopClicked(); 465 stopClicked();
466 } 466 }
467 else 467 else
468 { 468 {
469 receivePacket( p ); 469 receivePacket( p );
470 delete p; 470 delete p;
471 } 471 }
472} 472}
473 473
474 474
475void Wellenreiter::doAction( const QString& action, const QString& protocol, OPacket* p ) 475void Wellenreiter::doAction( const QString& action, const QString& protocol, OPacket* p )
476{ 476{
477 if ( action == "TouchSound" ) 477 if ( action == "TouchSound" )
478 ODevice::inst()->touchSound(); 478 ODevice::inst()->touchSound();
479 else if ( action == "AlarmSound" ) 479 else if ( action == "AlarmSound" )
480 ODevice::inst()->alarmSound(); 480 ODevice::inst()->alarmSound();
481 else if ( action == "KeySound" ) 481 else if ( action == "KeySound" )
482 ODevice::inst()->keySound(); 482 ODevice::inst()->keySound();
483 else if ( action == "LedOn" ) 483 else if ( action == "LedOn" )
484 ODevice::inst()->setLedState( Led_Mail, Led_On ); 484 ODevice::inst()->setLedState( Led_Mail, Led_On );
485 else if ( action == "LedOff" ) 485 else if ( action == "LedOff" )
486 ODevice::inst()->setLedState( Led_Mail, Led_Off ); 486 ODevice::inst()->setLedState( Led_Mail, Led_Off );
487 else if ( action == "LogMessage" ) 487 else if ( action == "LogMessage" )
488 logwindow->log( QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) ); 488 logwindow->log( QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) );
489 else if ( action == "MessageBox" ) 489 else if ( action == "MessageBox" )
490 QMessageBox::information ( this, "Notification!", 490 QMessageBox::information( this, "Notification!",
491 QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) ); 491 QString().sprintf( "Got packet with protocol '%s'", (const char*) protocol ) );
492} 492}
493 493
494void Wellenreiter::joinNetwork(const QString& type, const QString& essid, int channel, const QString& macaddr) 494void Wellenreiter::joinNetwork(const QString& type, const QString& essid, int channel, const QString& macaddr)
495{ 495{
496 // we need the interface too: 496 if ( !iface )
497 const QString iface = "wlan0"; 497 {
498 qDebug( "joinNetwork() - %s, %s, %d, %s", 498 QMessageBox::warning( this, tr( "Can't do that!" ), tr( "No wireless\ninterface available." ) );
499 return;
500 }
501
502 if ( sniffing )
503 {
504 QMessageBox::warning( this, tr( "Can't do that!" ), tr( "Stop sniffing before\njoining a net." ) );
505 return;
506 }
507
508 qDebug( "joinNetwork() with Interface %s: %s, %s, %d, %s",
509 (const char*) iface->name(),
499 (const char*) type, 510 (const char*) type,
500 (const char*) essid, 511 (const char*) essid,
501 channel, 512 channel,
502 (const char*) macaddr ); 513 (const char*) macaddr );
503 514
504 // TODO: Stop scanning here
505
506 QCopEnvelope msg( "QPE/Application/networksettings", "wlan(QString,QString,QString)" ); 515 QCopEnvelope msg( "QPE/Application/networksettings", "wlan(QString,QString,QString)" );
507 msg << iface << QString("Mode") << type; 516 msg << iface->name() << QString("Mode") << type;
508 msg << iface << QString("ESSID") << essid; 517 msg << iface->name() << QString("ESSID") << essid;
509 msg << iface << QString("Channel") << channel; 518 msg << iface->name() << QString("Channel") << channel;
510 msg << iface << QString("MacAddr") << macaddr; 519 msg << iface->name() << QString("MacAddr") << macaddr;
511 520
512} 521}
513 522