summaryrefslogtreecommitdiffstats
path: root/src/cdma-connman.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2011-07-21 04:36:47 -0500
committerDenis Kenzior <denkenz@gmail.com>2011-07-21 04:41:34 -0500
commit43962ae05b710f1b1f40a14794c0871f6e254273 (patch)
tree6b1b7cb4d31797d53699e13148cd58592bb43a7a /src/cdma-connman.c
parentcbeb0a454b4fa445fdeb7ea77e2e98ee5f8cb4aa (diff)
downloadofono-43962ae05b710f1b1f40a14794c0871f6e254273.tar.bz2
cdma-connman: emit PropertyChanged signal
When Username / Password are changed, we should emit the PropertyChanged signal
Diffstat (limited to 'src/cdma-connman.c')
-rw-r--r--src/cdma-connman.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/cdma-connman.c b/src/cdma-connman.c
index 4466dee8..b52f9c18 100644
--- a/src/cdma-connman.c
+++ b/src/cdma-connman.c
@@ -377,6 +377,8 @@ static DBusMessage *cdma_connman_set_username(struct ofono_cdma_connman *cm,
DBusConnection *conn, DBusMessage *msg,
const char *username)
{
+ const char *path;
+
if (strlen(username) > OFONO_CDMA_CONNMAN_MAX_USERNAME_LENGTH)
return __ofono_error_invalid_format(msg);
@@ -385,13 +387,22 @@ static DBusMessage *cdma_connman_set_username(struct ofono_cdma_connman *cm,
strcpy(cm->username, username);
- return dbus_message_new_method_return(msg);
+ g_dbus_send_reply(conn, msg, DBUS_TYPE_INVALID);
+
+ path = __ofono_atom_get_path(cm->atom);
+ ofono_dbus_signal_property_changed(conn, path,
+ OFONO_CDMA_CONNECTION_MANAGER_INTERFACE,
+ "Username", DBUS_TYPE_STRING, &username);
+
+ return NULL;
}
static DBusMessage *cdma_connman_set_password(struct ofono_cdma_connman *cm,
DBusConnection *conn, DBusMessage *msg,
const char *password)
{
+ const char *path;
+
if (strlen(password) > OFONO_CDMA_CONNMAN_MAX_PASSWORD_LENGTH)
return __ofono_error_invalid_format(msg);
@@ -400,7 +411,14 @@ static DBusMessage *cdma_connman_set_password(struct ofono_cdma_connman *cm,
strcpy(cm->password, password);
- return dbus_message_new_method_return(msg);
+ g_dbus_send_reply(conn, msg, DBUS_TYPE_INVALID);
+
+ path = __ofono_atom_get_path(cm->atom);
+ ofono_dbus_signal_property_changed(conn, path,
+ OFONO_CDMA_CONNECTION_MANAGER_INTERFACE,
+ "Password", DBUS_TYPE_STRING, &password);
+
+ return NULL;
}
static DBusMessage *cdma_connman_set_property(DBusConnection *conn,