summaryrefslogtreecommitdiffstats
path: root/plugins/connman.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2011-07-12 09:15:04 -0500
committerDenis Kenzior <denkenz@gmail.com>2011-07-12 09:27:44 -0500
commit67c501891f7f290c5f00b39e91daaba9e96d9ccd (patch)
tree0b6baafa1f738a97b20227fbe23894f544165197 /plugins/connman.c
parent143553b7c9f429f02e986f2e4674ccc4c9d4f0b7 (diff)
downloadofono-67c501891f7f290c5f00b39e91daaba9e96d9ccd.tar.bz2
connman: Refactor pns_release
Diffstat (limited to 'plugins/connman.c')
-rw-r--r--plugins/connman.c37
1 files changed, 20 insertions, 17 deletions
diff --git a/plugins/connman.c b/plugins/connman.c
index 46b30077..930b6ad1 100644
--- a/plugins/connman.c
+++ b/plugins/connman.c
@@ -55,15 +55,32 @@ struct pns_req {
char *path;
};
+static void send_release(const char *path)
+{
+ DBusMessage *message;
+
+ message = dbus_message_new_method_call(CONNMAN_SERVICE,
+ CONNMAN_MANAGER_PATH,
+ CONNMAN_MANAGER_INTERFACE,
+ "ReleasePrivateNetwork");
+ if (message == NULL)
+ return;
+
+ dbus_message_append_args(message, DBUS_TYPE_OBJECT_PATH, &path,
+ DBUS_TYPE_INVALID);
+ dbus_message_set_no_reply(message, TRUE);
+ dbus_connection_send(connection, message, NULL);
+ dbus_message_unref(message);
+}
+
static void pns_release(int uid)
{
- DBusMessage *message = NULL;
struct pns_req *req;
DBG("");
req = g_hash_table_lookup(requests, &uid);
- if (!req)
+ if (req == NULL)
return;
if (req->pending) {
@@ -77,21 +94,7 @@ static void pns_release(int uid)
return;
}
- message = dbus_message_new_method_call(CONNMAN_SERVICE,
- CONNMAN_MANAGER_PATH,
- CONNMAN_MANAGER_INTERFACE,
- "ReleasePrivateNetwork");
-
- if (message == NULL)
- goto error;
-
- dbus_message_append_args(message, DBUS_TYPE_OBJECT_PATH, &req->path,
- DBUS_TYPE_INVALID);
- dbus_message_set_no_reply(message, TRUE);
- dbus_connection_send(connection, message, NULL);
- dbus_message_unref(message);
-
-error:
+ send_release(req->path);
g_hash_table_remove(requests, &req->uid);
}