if (msg->len < 128)
*--dp = (msg->len << 1) | EA;
else {
- *--dp = (msg->len >> 7); /* bits 7 - 15 */
- *--dp = (msg->len & 127) << 1; /* bits 0 - 6 */
+ *--dp = (msg->len >> 6) | EA;
+ *--dp = (msg->len & 127) << 1;
}
}
{
struct gsm_msg *msg;
msg = gsm_data_alloc(gsm, 0, dlen + 2, gsm->ftype);
- if (msg == NULL)
- return;
msg->data[0] = (cmd & 0xFE) << 1 | EA; /* Clear C/R */
msg->data[1] = (dlen << 1) | EA;
memcpy(msg->data + 2, data, dlen);