diff options
author | Denis Kenzior <denkenz@gmail.com> | 2010-10-22 11:56:35 -0500 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2010-10-22 11:56:35 -0500 |
commit | 39a3080a4b4d9c5f62db694c8fc6215438df6e89 (patch) | |
tree | 557c87a9c766d83bd8a2289329bb715a884642f6 /src | |
parent | 71255c49fb2802f925b60f7a03b7b6ac2a9a2d2d (diff) | |
download | ofono-39a3080a4b4d9c5f62db694c8fc6215438df6e89.tar.bz2 |
sim: Break out common FDN property signaling
Diffstat (limited to 'src')
-rw-r--r-- | src/sim.c | 37 |
1 files changed, 17 insertions, 20 deletions
@@ -1245,6 +1245,21 @@ static void sim_retrieve_imsi(struct ofono_sim *sim) sim->driver->read_imsi(sim, sim_imsi_cb, sim); } +static void sim_fdn_enabled(struct ofono_sim *sim) +{ + DBusConnection *conn = ofono_dbus_get_connection(); + const char *path = __ofono_atom_get_path(sim->atom); + dbus_bool_t val; + + sim->fixed_dialing = TRUE; + + val = sim->fixed_dialing; + ofono_dbus_signal_property_changed(conn, path, + OFONO_SIM_MANAGER_INTERFACE, + "FixedDialing", + DBUS_TYPE_BOOLEAN, &val); +} + static void sim_efadn_info_read_cb(int ok, unsigned char file_status, int total_length, int record_length, void *userdata) @@ -1255,16 +1270,7 @@ static void sim_efadn_info_read_cb(int ok, unsigned char file_status, goto out; if (file_status != SIM_FILE_STATUS_VALID) { - DBusConnection *conn = ofono_dbus_get_connection(); - const char *path = __ofono_atom_get_path(sim->atom); - - sim->fixed_dialing = TRUE; - - ofono_dbus_signal_property_changed(conn, path, - OFONO_SIM_MANAGER_INTERFACE, - "FixedDialing", - DBUS_TYPE_BOOLEAN, - &sim->fixed_dialing); + sim_fdn_enabled(sim); return; } @@ -1332,16 +1338,7 @@ static void sim_efest_read_cb(int ok, int length, int record, */ if (sim_est_is_active(sim->efest, sim->efest_length, SIM_EST_SERVICE_FDN)) { - DBusConnection *conn = ofono_dbus_get_connection(); - const char *path = __ofono_atom_get_path(sim->atom); - - sim->fixed_dialing = TRUE; - - ofono_dbus_signal_property_changed(conn, path, - OFONO_SIM_MANAGER_INTERFACE, - "FixedDialing", - DBUS_TYPE_BOOLEAN, - &sim->fixed_dialing); + sim_fdn_enabled(sim); return; } |