From: Pekka Pessi <[email protected]>

---
 include/sim.h |    5 +++--
 src/sim.c     |    9 +++++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/include/sim.h b/include/sim.h
index 36a99b9..d3e564c 100644
--- a/include/sim.h
+++ b/include/sim.h
@@ -143,8 +143,9 @@ struct ofono_sim_driver {
                        ofono_sim_passwd_cb_t cb, void *data);
        void (*send_passwd)(struct ofono_sim *sim, const char *passwd,
                        ofono_sim_lock_unlock_cb_t cb, void *data);
-       void (*reset_passwd)(struct ofono_sim *sim, const char *puk,
-                       const char *passwd,
+       void (*reset_passwd)(struct ofono_sim *sim,
+                       enum ofono_sim_password_type type,
+                       const char *puk, const char *passwd,
                        ofono_sim_lock_unlock_cb_t cb, void *data);
        void (*change_passwd)(struct ofono_sim *sim,
                        enum ofono_sim_password_type type,
diff --git a/src/sim.c b/src/sim.c
index 04a708b..bac77e0 100644
--- a/src/sim.c
+++ b/src/sim.c
@@ -753,8 +753,13 @@ static DBusMessage *sim_reset_pin(DBusConnection *conn, 
DBusMessage *msg,
 
        type = sim_string_to_passwd(typestr);
 
-       if (type == OFONO_SIM_PASSWORD_NONE || type != sim->pin_type)
+       switch (type) {
+       case OFONO_SIM_PASSWORD_SIM_PIN:
+       case OFONO_SIM_PASSWORD_SIM_PIN2:
+               break;
+       default:
                return __ofono_error_invalid_format(msg);
+       }
 
        if (!is_valid_pin(puk, PIN_TYPE_PUK))
                return __ofono_error_invalid_format(msg);
@@ -763,7 +768,7 @@ static DBusMessage *sim_reset_pin(DBusConnection *conn, 
DBusMessage *msg,
                return __ofono_error_invalid_format(msg);
 
        sim->pending = dbus_message_ref(msg);
-       sim->driver->reset_passwd(sim, puk, pin, sim_enter_pin_cb, sim);
+       sim->driver->reset_passwd(sim, type, puk, pin, sim_enter_pin_cb, sim);
 
        return NULL;
 }
-- 
1.7.0.4

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to