From 43962ae05b710f1b1f40a14794c0871f6e254273 Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Thu, 21 Jul 2011 04:36:47 -0500 Subject: cdma-connman: emit PropertyChanged signal When Username / Password are changed, we should emit the PropertyChanged signal --- src/cdma-connman.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'src/cdma-connman.c') 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, -- cgit v1.2.3