FreeCalypso > hg > freecalypso-tools
changeset 377:f7228c18463a
uptools/libcoding: added function for UCS-2 BE output
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 08 Mar 2018 23:59:42 +0000 |
parents | 83c755829e31 |
children | e61525f082bd |
files | uptools/libcoding/Makefile uptools/libcoding/ucs2_bigend.c |
diffstat | 2 files changed, 23 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/uptools/libcoding/Makefile Thu Mar 08 23:06:31 2018 +0000 +++ b/uptools/libcoding/Makefile Thu Mar 08 23:59:42 2018 +0000 @@ -4,7 +4,7 @@ gsm7_decode_tables.o gsm7_encode.o gsm7_encode_table.o gsm7_pack.o \ gsm7_unpack.o gsmtime.o hexdecode.o hexdump.o hexencode.o \ number_decode.o number_encode.o scaddr.o sms_submit.o sms_submit8.o \ - ucs2_decode.o utf8_decode.o utf8_decode2.o + ucs2_bigend.o ucs2_decode.o utf8_decode.o utf8_decode2.o LIB= libcoding.a all: ${LIB}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uptools/libcoding/ucs2_bigend.c Thu Mar 08 23:59:42 2018 +0000 @@ -0,0 +1,22 @@ +/* + * This library module implements the function for converting a UCS-2 + * string from native 16-bit words into a byte buffer for SMS. + */ + +#include <sys/types.h> + +ucs2_out_bigend(inbuf, outbuf, nuni) + u_short *inbuf; + u_char *outbuf; + unsigned nuni; +{ + u_short *ip = inbuf; + u_char *op = outbuf; + unsigned n, uni; + + for (n = 0; n < nuni; n++) { + uni = *ip++; + *op++ = uni >> 8; + *op++ = uni; + } +}