summaryrefslogtreecommitdiffstats
path: root/src/call-barring.c
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2009-09-22 10:59:17 -0500
committerDenis Kenzior <denkenz@gmail.com>2009-09-22 11:24:21 -0500
commitcfcf7e6516de771bff1feb1f7be8a3e0d5e03358 (patch)
treecd284fc3b02c0f582200ddee340d66b33801ebd5 /src/call-barring.c
parentb8dcd905fb2c2ee65afea0a512ac63a9af3abeec (diff)
downloadofono-cfcf7e6516de771bff1feb1f7be8a3e0d5e03358.tar.bz2
Simplify: Use dbus_message_iter_get_args
Diffstat (limited to 'src/call-barring.c')
-rw-r--r--src/call-barring.c40
1 files changed, 14 insertions, 26 deletions
diff --git a/src/call-barring.c b/src/call-barring.c
index 75b1be7d..cdd63316 100644
--- a/src/call-barring.c
+++ b/src/call-barring.c
@@ -889,25 +889,21 @@ static DBusMessage *cb_disable_all(DBusConnection *conn, DBusMessage *msg,
void *data, const char *fac)
{
struct ofono_call_barring *cb = data;
- DBusMessageIter iter;
- const char *passwd = "";
+ const char *passwd;
+
+ if (!cb->driver->set)
+ return __ofono_error_not_implemented(msg);
if (cb->pending)
return __ofono_error_busy(msg);
- if (!dbus_message_iter_init(msg, &iter))
- return __ofono_error_invalid_args(msg);
-
- if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING)
+ if (dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &passwd,
+ DBUS_TYPE_INVALID) == FALSE)
return __ofono_error_invalid_args(msg);
- dbus_message_iter_get_basic(&iter, &passwd);
if (!is_valid_pin(passwd))
return __ofono_error_invalid_format(msg);
- if (!cb->driver->set)
- return __ofono_error_not_implemented(msg);
-
cb_set_query_bounds(cb, fac, FALSE);
cb->pending = dbus_message_ref(msg);
@@ -939,34 +935,26 @@ static DBusMessage *cb_set_passwd(DBusConnection *conn, DBusMessage *msg,
void *data)
{
struct ofono_call_barring *cb = data;
- DBusMessageIter iter;
- const char *old_passwd, *new_passwd;
+ const char *old_passwd;
+ const char *new_passwd;
+
+ if (!cb->driver->set_passwd)
+ return __ofono_error_not_implemented(msg);
if (cb->pending)
return __ofono_error_busy(msg);
- if (!dbus_message_iter_init(msg, &iter))
+ if (dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &old_passwd,
+ DBUS_TYPE_STRING, &new_passwd,
+ DBUS_TYPE_INVALID) == FALSE)
return __ofono_error_invalid_args(msg);
- if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING)
- return __ofono_error_invalid_args(msg);
-
- dbus_message_iter_get_basic(&iter, &old_passwd);
if (!is_valid_pin(old_passwd))
return __ofono_error_invalid_format(msg);
- dbus_message_iter_next(&iter);
-
- if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_STRING)
- return __ofono_error_invalid_args(msg);
-
- dbus_message_iter_get_basic(&iter, &new_passwd);
if (!is_valid_pin(new_passwd))
return __ofono_error_invalid_format(msg);
- if (!cb->driver->set_passwd)
- return __ofono_error_not_implemented(msg);
-
cb->pending = dbus_message_ref(msg);
cb->driver->set_passwd(cb, "AB", old_passwd, new_passwd,
cb_set_passwd_callback, cb);