OsmoSGSN [PATCH], Network Service

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 Hans Peter Freyther holger at freyther.de
Fri May 23 11:16:50 UTC 2014


On Fri, May 23, 2014 at 11:44:40AM +0200, Michal Grznár wrote:

Hi,

> And the problem was as I said in Imsi attach procedure new TLLI == new
> allocated P-tmsi, and there was a problem that the function  gprs_tmsi2tlli()
> function there was not called and so I had to mask the upper bits in
> function where the p-tmsi is allocated, there is also a pcap trace where
> you can see it.

Could you please elaborate of what/were (e.g. packet numbers) we
can see "it" and what it should be instead? And please use "git diff"
or preferable "git commit" and git format-patch. The "diff" you include
is hand-written and sadly not usable because of this.

And as written by Harald before. The place you patch is not correct.
The method you patch should generate a unique P-TMSI. It might should
mask some of the higher bits. But you need to look at the callers of
this function if the tlli is not updated.

e.g. in src/gprs/gprs_gmm.c you will see something like this:

        ctx->p_tmsi = sgsn_alloc_ptmsi();
#endif

        /* Even if there is no P-TMSI allocated, the MS will switch from
         * foreign TLLI to local TLLI */
        ctx->tlli_new = gprs_tmsi2tlli(ctx->p_tmsi, TLLI_LOCAL);

        /* Inform LLC layer about new TLLI but keep old active */
        gprs_llgmm_assign(ctx->llme, ctx->tlli, ctx->tlli_new,
                          GPRS_ALGO_GEA0, NULL);

So this call to gprs_tmsi2tlli will make sure that 0xc0000000 will
be set. In fact I see two calls to sgsn_alloc_ptmsi and both of them
do the above and assign the new tlli to the context. So please could
you try to explain what you are trying to solve?

holger





More information about the OpenBSC mailing list