view uptools/libcoding/gsmtime.c @ 698:9ecbf1bf2e1b

fc-iram: added '+' to getopt magic string like in fc-xram Both fc-iram and fc-xram now support secondary program invokation. If the user needs to pass some options to the secondary program, we don't want fc-iram or fc-xram to claim these options as its own, thus we need to stop getopt() from reordering arguments. This fix was already implemented in fc-xram a long time ago, but the issue was overlooked when secondary program invokation ability was added to fc-iram.
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 31 Mar 2020 03:23:26 +0000
parents f40530e2d48d
children
line wrap: on
line source

/*
 * This library module implements decoding of GSM timestamps.
 */

#include <sys/types.h>
#include <stdio.h>

gsm_timestamp_decode(inbuf, outbuf)
	u_char *inbuf;
	char *outbuf;
{
	u_char rev[7];
	int i, d1, d2, tzsign;

	for (i = 0; i < 7; i++) {
		d1 = inbuf[i] & 0xF;
		d2 = inbuf[i] >> 4;
		rev[i] = (d1 << 4) | d2;
	}
	if (rev[6] & 0x80) {
		rev[6] &= 0x7F;
		tzsign = '-';
	} else
		tzsign = '+';
	sprintf(outbuf, "%02X/%02X/%02X,%02X:%02X:%02X%c%02X", rev[0], rev[1],
		rev[2], rev[3], rev[4], rev[5], tzsign, rev[6]);
}