From: Felix Fietkau Date: Mon, 13 Apr 2015 22:29:26 +0000 (+0200) Subject: Add command to get IMEI from the device X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=a9a5797a4693520f4827481998ebf30b9968c34d;p=oweals%2Fuqmi.git Add command to get IMEI from the device Signed-off-by: Felix Fietkau --- diff --git a/commands-dms.c b/commands-dms.c index 563b6d9..668c78f 100644 --- a/commands-dms.c +++ b/commands-dms.c @@ -331,6 +331,22 @@ cmd_dms_get_msisdn_prepare(struct qmi_dev *qmi, struct qmi_request *req, struct return QMI_CMD_REQUEST; } +static void cmd_dms_get_imei_cb(struct qmi_dev *qmi, struct qmi_request *req, struct qmi_msg *msg) +{ + struct qmi_dms_get_ids_response res; + + qmi_parse_dms_get_ids_response(msg, &res); + if (res.data.imei) + blobmsg_add_string(&status, NULL, res.data.imei); +} + +static enum qmi_cmd_result +cmd_dms_get_imei_prepare(struct qmi_dev *qmi, struct qmi_request *req, struct qmi_msg *msg, char *arg) +{ + qmi_set_dms_get_ids_request(msg); + return QMI_CMD_REQUEST; +} + #define cmd_dms_reset_cb no_cb static enum qmi_cmd_result cmd_dms_reset_prepare(struct qmi_dev *qmi, struct qmi_request *req, struct qmi_msg *msg, char *arg) diff --git a/commands-dms.h b/commands-dms.h index a370425..edf6fde 100644 --- a/commands-dms.h +++ b/commands-dms.h @@ -14,6 +14,7 @@ __uqmi_command(dms_set_new_pin, new-pin, required, CMD_TYPE_OPTION), \ __uqmi_command(dms_get_iccid, get-iccid, no, QMI_SERVICE_DMS), \ __uqmi_command(dms_get_imsi, get-imsi, no, QMI_SERVICE_DMS), \ + __uqmi_command(dms_get_imei, get-imei, no, QMI_SERVICE_DMS), \ __uqmi_command(dms_get_msisdn, get-msisdn, no, QMI_SERVICE_DMS), \ __uqmi_command(dms_set_operating_mode, set-device-operating-mode, required, QMI_SERVICE_DMS), \ __uqmi_command(dms_reset, reset-dms, no, QMI_SERVICE_DMS) \ @@ -41,6 +42,7 @@ " --new-pin : New pin\n" \ " --get-iccid: Get the ICCID\n" \ " --get-imsi: Get International Mobile Subscriber ID\n" \ + " --get-imei: Get International Mobile Equipment ID\n" \ " --get-msisdn: Get the MSISDN (telephone number)\n" \ " --reset-dms: Reset the DMS service\n" \ " --set-device-operating-mode Set the device operating mode\n" \