diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-01-04 16:33:56 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-01-04 16:33:56 +0100 |
commit | c7799147ac67fe1670bf05e7ccb6beae80c0e300 (patch) | |
tree | 55477e14a95a4d8135abcb50caa22d3dfe3d2022 /src | |
parent | 9911ffd65ccd2d2cacfa1bf55ac70e3c1ec00a67 (diff) | |
download | connman-c7799147ac67fe1670bf05e7ccb6beae80c0e300.tar.gz connman-c7799147ac67fe1670bf05e7ccb6beae80c0e300.tar.bz2 connman-c7799147ac67fe1670bf05e7ccb6beae80c0e300.zip |
Add support for element based debugging
Diffstat (limited to 'src')
-rw-r--r-- | src/element.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/element.c b/src/element.c index 2599e66c..2f860c0a 100644 --- a/src/element.c +++ b/src/element.c @@ -311,6 +311,27 @@ static void set_common_property(struct connman_element *element, __connman_element_unlock(element); } +static void emit_element_signal(DBusConnection *conn, const char *member, + struct connman_element *element) +{ + DBusMessage *signal; + + if (__connman_debug_enabled() == FALSE) + return; + + DBG("conn %p member %s", conn, member); + + if (element == NULL) + return; + + signal = dbus_message_new_signal(element->path, + CONNMAN_DEBUG_INTERFACE, member); + if (signal == NULL) + return; + + g_dbus_send_message(conn, signal); +} + static void emit_enabled_signal(DBusConnection *conn, struct connman_element *element) { @@ -1760,6 +1781,8 @@ static void register_element(gpointer data, gpointer user_data) } } + emit_element_signal(connection, "ElementAdded", element); + __connman_element_store(element); if (started == FALSE) @@ -1861,6 +1884,8 @@ static gboolean remove_element(GNode *node, gpointer user_data) CONNMAN_NETWORK_INTERFACE); } + emit_element_signal(connection, "ElementRemoved", element); + connman_element_unref(element); return FALSE; @@ -1911,6 +1936,8 @@ static gboolean update_element(GNode *node, gpointer user_data) } } + emit_element_signal(connection, "ElementUpdated", element); + return FALSE; } |