qmi_set_wds_start_network_request(msg, &wds_sn_req);
return QMI_CMD_REQUEST;
}
+
+static void
+cmd_wds_get_packet_service_status_cb(struct qmi_dev *qmi, struct qmi_request *req, struct qmi_msg *msg)
+{
+ struct qmi_wds_get_packet_service_status_response res;
+ const char *data_status[] = {
+ [QMI_WDS_CONNECTION_STATUS_UNKNOWN] = "unknown",
+ [QMI_WDS_CONNECTION_STATUS_DISCONNECTED] = "disconnected",
+ [QMI_WDS_CONNECTION_STATUS_CONNECTED] = "connected",
+ [QMI_WDS_CONNECTION_STATUS_SUSPENDED] = "suspended",
+ [QMI_WDS_CONNECTION_STATUS_AUTHENTICATING] = "authenticating",
+ };
+ int s = 0;
+
+ qmi_parse_wds_get_packet_service_status_response(msg, &res);
+ if (res.set.connection_status &&
+ res.data.connection_status >= 0 &&
+ res.data.connection_status < ARRAY_SIZE(data_status))
+ s = res.data.connection_status;
+
+ blobmsg_add_string(&status, NULL, data_status[s]);
+}
+
+static enum qmi_cmd_result
+cmd_wds_get_packet_service_status_prepare(struct qmi_dev *qmi, struct qmi_request *req, struct qmi_msg *msg, char *arg)
+{
+ qmi_set_wds_get_packet_service_status_request(msg);
+ return QMI_CMD_REQUEST;
+}