From 3e6995b377ef331e8e15267f6be357e7a958203a Mon Sep 17 00:00:00 2001 From: Forest Bond Date: Tue, 11 May 2010 20:56:06 -0400 Subject: Fail immediately enabling/disabling unregistered technology Previously, calling EnableTechnology or DisableTechnology with an unregistered technology type caused the call to fail silently and eventually timeout. With this patch, a "Not Registered" error is returned immediately instead. --- src/manager.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/manager.c') diff --git a/src/manager.c b/src/manager.c index da0ee53d..6561a78c 100644 --- a/src/manager.c +++ b/src/manager.c @@ -345,6 +345,9 @@ static DBusMessage *enable_technology(DBusConnection *conn, else return __connman_error_invalid_arguments(msg); + if (__connman_notifier_is_registered(type) == FALSE) + return __connman_error_not_registered(msg); + if (__connman_notifier_is_enabled(type) == TRUE) return __connman_error_already_enabled(msg); @@ -390,6 +393,9 @@ static DBusMessage *disable_technology(DBusConnection *conn, else return __connman_error_invalid_arguments(msg); + if (__connman_notifier_is_registered(type) == FALSE) + return __connman_error_not_registered(msg); + if (__connman_notifier_is_enabled(type) == FALSE) return __connman_error_already_disabled(msg); -- cgit v1.2.3