[PATCH] move to hex TMSI representation

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Holger Freyther holger at freyther.de
Sun Mar 27 16:44:15 UTC 2016


> On 27 Mar 2016, at 14:17, Vadim Yanitskiy <axilirator at gmail.com> wrote:

Dear Vadim,


> 
> In OpenBSC, we traditionally displayed a TMSI in its integer
> representation, which is quite unusual in the telecom world. A TMSI is
> normally printed as a series of 8 hex digits.
> 
> This patch aligns OpenBSC with the telecom industry standard.

thanks a lot, I am afraid we need one more round.


> -#define tmsi_from_string(str) strtoul(str, NULL, 10)
> +#define tmsi_from_string(str) strtoul(str + 2, NULL, 16)

this macro is used for parsing strings from the network. We should not modify it.



> struct gsm_subscriber *subscr_active_by_tmsi(struct gsm_subscriber_group *sgrp,
> -					     uint32_t tmsi)
> +					     const char *tmsi)


why? the number of bytes needed fit in uint32_t so we should remain with this internal storage. We should just make sure to always print it as hex.


> -#define SCHEMA_REVISION "4"
> +#define SCHEMA_REVISION "5"

good, but I think we should change the schema to use uint32_t/INTEGER for the TMSI instead of text.



> +		/* Update old TMSI */
> +		update = dbi_conn_queryf(conn,
> +				"UPDATE Subscriber "
> +				"SET tmsi = '0x%08x' "
> +				"WHERE id = %llu",

but to int :)


kind regards
	holger


More information about the OpenBSC mailing list