int __connman_notifier_init(void);
void __connman_notifier_cleanup(void);
-void __connman_notifier_list_connected(DBusMessageIter *iter, void *user_data);
-
void __connman_notifier_register(enum connman_service_type type);
void __connman_notifier_unregister(enum connman_service_type type);
void __connman_notifier_service_add(struct connman_service *service,
connman_dbus_dict_append_basic(&dict, "OfflineMode",
DBUS_TYPE_BOOLEAN, &offlinemode);
- connman_dbus_dict_append_array(&dict, "ConnectedTechnologies",
- DBUS_TYPE_STRING, __connman_notifier_list_connected, NULL);
-
str = __connman_service_default();
if (str != NULL)
connman_dbus_dict_append_basic(&dict, "DefaultTechnology",
static volatile int enabled[MAX_TECHNOLOGIES];
static volatile int connected[MAX_TECHNOLOGIES];
-void __connman_notifier_list_connected(DBusMessageIter *iter, void *user_data)
-{
- int i;
-
- __sync_synchronize();
- for (i = 0; i < MAX_TECHNOLOGIES; i++) {
- const char *type = __connman_service_type2string(i);
-
- if (type == NULL)
- continue;
-
- if (connected[i] > 0)
- dbus_message_iter_append_basic(iter,
- DBUS_TYPE_STRING, &type);
- }
-}
-
static void technology_registered(enum connman_service_type type,
connman_bool_t registered)
{
{
DBG("type %d connected %d", type, connected);
- connman_dbus_property_changed_array(CONNMAN_MANAGER_PATH,
- CONNMAN_MANAGER_INTERFACE, "ConnectedTechnologies",
- DBUS_TYPE_STRING, __connman_notifier_list_connected, NULL);
-
state_changed(connected);
}