Hi list.

I was wandering about this part from smsc_at2.c :
<snip>
 if(octstr_len(msg->sms.udhdata)) {
        if (msg->sms.coding == DC_8BIT || msg->sms.coding == DC_UCS2) {
            len += octstr_len(msg->sms.udhdata);
        } else {
            /* The reason we branch here is because UDH data length is
determined
               in septets if we are in GSM coding, otherwise it's in
octets. Adding 6
               will ensure that for an octet length of 0, we get septet
length 0,
               and for octet length 1 we get septet length 2.*/
            len += (((8*octstr_len(msg->sms.udhdata)) + 6)/7);        
    }
    }
</snip>

if adds the length of the UDH differently for 7 bit then to 8 bit
encoding (as per the message coding)

<snip>
    /* udh */
    if(octstr_len(msg->sms.udhdata)) {
            pos += at2_encode8bituncompressed(msg->sms.udhdata,
&pdu[pos]);
    }
</snip>

and then always code the UDH as 8 bit.. is that OK 

thanks

Oded Arbel
m-Wise Inc.
[EMAIL PROTECTED]

--
King Henry : "There. That's the Great Seal of England. Don't lose it.
Without the seal, there's no more England and we'll all have to pack up
and go back to Normandy."
        -- from "Becket"

Reply via email to