summaryrefslogtreecommitdiffstats
path: root/lib/network/connection_manager.pm
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.com>2009-02-25 16:23:36 +0000
committerOlivier Blin <oblin@mandriva.com>2009-02-25 16:23:36 +0000
commit357a13c8cfcb793b57d732a4c3684c081c952df8 (patch)
tree16e6b343a1730b8859c5655178af4b4f776549ec /lib/network/connection_manager.pm
parentfcb4e42f06430b87c5fc7fcf9ebc21ea001c782a (diff)
downloaddrakx-net-357a13c8cfcb793b57d732a4c3684c081c952df8.tar
drakx-net-357a13c8cfcb793b57d732a4c3684c081c952df8.tar.gz
drakx-net-357a13c8cfcb793b57d732a4c3684c081c952df8.tar.bz2
drakx-net-357a13c8cfcb793b57d732a4c3684c081c952df8.tar.xz
drakx-net-357a13c8cfcb793b57d732a4c3684c081c952df8.zip
move wireless status code in generic dbus handling (to support it in drakroam too)
Diffstat (limited to 'lib/network/connection_manager.pm')
-rw-r--r--lib/network/connection_manager.pm14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/network/connection_manager.pm b/lib/network/connection_manager.pm
index eb6614c..a038838 100644
--- a/lib/network/connection_manager.pm
+++ b/lib/network/connection_manager.pm
@@ -453,8 +453,22 @@ sub setup_dbus_handlers {
or return;
$cmanager->update_networks if $member eq 'status';
}
+ if ($msg->get_interface eq 'com.mandriva.monitoring.wireless' && $msg->get_member eq 'Event') {
+ my ($event, $interface) = $msg->get_args_list;
+ print "got wireless event: $event $interface\n";
+ my $cmanager = find { $_->{connection}->get_interface eq $interface } @$cmanagers;
+ if ($cmanager && $cmanager->{wait_message}) {
+ if ($event =~ /CTRL-EVENT-CONNECTED/) {
+ undef $cmanager->{wait_message};
+ } elsif ($event =~ /Authentication with (.+?) timed out/) {
+ undef $cmanager->{wait_message};
+ $cmanager->{in}->ask_warn(N("Error"), N("Connection failed."));
+ }
+ }
+ }
});
$dbus->{connection}->add_match("type='signal',interface='com.mandriva.network'");
+ $dbus->{connection}->add_match("type='signal',interface='com.mandriva.monitoring.wireless'");
dbus_object::set_gtk2_watch_helper($dbus);
}