Making smsc number optional
authorSławomir Demeszko <s.demeszko@wireless-instruments.com>
Mon, 22 Dec 2014 18:47:34 +0000 (19:47 +0100)
committerFelix Fietkau <nbd@openwrt.org>
Mon, 22 Dec 2014 20:43:07 +0000 (21:43 +0100)
If smsc number is not provided before sending sms then
operator's default stored on simcard will be used.

Signed-off-by: SÅ‚awomir Demeszko <s.demeszko@wireless-instruments.com>
commands-wms.c
commands-wms.h

index 2e4e08f..345b812 100644 (file)
@@ -612,12 +612,12 @@ cmd_wms_send_message_prepare(struct qmi_dev *qmi, struct qmi_request *req, struc
        unsigned char protocol_id = 0x00;
        unsigned char dcs = 0x00;
 
-       if (!_send.smsc || !*_send.smsc || !_send.target || !*_send.target) {
+       if (!_send.target || !*_send.target) {
                uqmi_add_error("Missing argument");
                return QMI_CMD_EXIT;
        }
 
-       if (strlen(_send.smsc) > 16 || strlen(_send.target) > 16 || strlen(arg) > 160) {
+       if ((_send.smsc && strlen(_send.smsc) > 16) || strlen(_send.target) > 16 || strlen(arg) > 160) {
                uqmi_add_error("Argument too long");
                return QMI_CMD_EXIT;
        }
@@ -625,7 +625,11 @@ cmd_wms_send_message_prepare(struct qmi_dev *qmi, struct qmi_request *req, struc
        if (_send.flash)
                dcs |= 0x10;
 
-       cur += pdu_encode_number(cur, _send.smsc, true);
+       if (!_send.smsc || !*_send.smsc)
+               *(cur++) = 0;
+       else
+               cur += pdu_encode_number(cur, _send.smsc, true);
+
        *(cur++) = first_octet;
        *(cur++) = 0; /* reference */
 
index 07191da..83e6614 100644 (file)
@@ -14,7 +14,7 @@
                "  --get-message <id>:               Get SMS message at index <id>\n" \
                "  --get-raw-message <id>:           Get SMS raw message contents at index <id>\n" \
                "  --send-message <data>:            Send SMS message (use options below)\n" \
-               "    --send-message-smsc <nr>:       SMSC number (required)\n" \
+               "    --send-message-smsc <nr>:       SMSC number\n" \
                "    --send-message-target <nr>:     Destination number (required)\n" \
                "    --send-message-flash:           Send as Flash SMS\n" \