osmo-pcu/src
Vadim Yanitskiy cb98894eb1 TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead
The assumption that TLLI 0x00000000 is invalid and can be used
as the initializer is wrong.  Similar to TMSI, 0x00000000 is a
perfectly valid value, while 0xffffffff is reserved - use it.

According to 3GPP TS 23.003, section 2.4, a TMSI/P-TMSI with
all 32 bits equal to 1 is special and shall not be allocated by
the network.  The reason is that it must be stored on the SIM,
where 'ff'O represents the erased state.  According to section
2.6 of the same document, a local/foreign TLLI is derived from
P-TMSI, so the same rule applies to TLLI.

I manually checked and corrected all occurances of 'tlli' in the
code.  The test expectations have been adjusted with this command:

  $ find tests/ -name "*.err" | xargs sed -i "s/0x00000000/0xffffffff/g"

so there should be no behavior change.  The only exception is
the 'TypesTest', where TLLI 0xffffffff is being encoded and
expected in the hexdump, so I regenerated the test output.

Change-Id: Ie89fab75ecc1d8b5e238d3ff214ea7ac830b68b5
Related: OS#4844
2020-11-10 17:06:39 +00:00
..
osmo-bts-litecell15 Use osmo_fd_setup() whenever applicable 2020-10-19 11:36:33 +00:00
osmo-bts-oc2g Use osmo_fd_setup() whenever applicable 2020-10-19 11:36:33 +00:00
osmo-bts-sysmo Use osmo_fd_setup() whenever applicable 2020-10-19 11:36:33 +00:00
.gitignore Adding .gitignore to source directory 2012-06-27 17:45:15 +02:00
Makefile.am Get rid of class GprsCodingScheme 2020-05-20 11:07:07 +00:00
bts.cpp Take into account BTS supported (M)CS values when retrieving the maximum 2020-11-04 21:39:42 +01:00
bts.h TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
coding_scheme.c Fix mcs_is_valid(): UNKNOWN value is not a valid (M)CS 2020-11-05 15:48:04 +01:00
coding_scheme.h Get rid of class GprsCodingScheme 2020-05-20 11:07:07 +00:00
csn1.c cosmetic: Fix ws between if keyword and parenthesis 2020-10-29 11:34:17 +00:00
csn1.h csn1: fix: never use enumerated types in codec structures 2020-05-23 19:26:58 +07:00
cxx_linuxlist.h llist: Add missing const qualifier in llist cast method 2015-08-24 12:23:50 +02:00
decoding.cpp decoding.cpp: Improve logging in malformed UL data parsing 2020-06-30 21:33:49 +02:00
decoding.h Get rid of class GprsCodingScheme 2020-05-20 11:07:07 +00:00
egprs_rlc_compression.cpp decompress_crbb: add length argument for search_runlen 2019-06-24 13:51:06 +00:00
egprs_rlc_compression.h egprs_rlc_compression: fix white spaces 2019-06-17 02:04:09 +02:00
encoding.cpp Fix mcs_is_valid(): UNKNOWN value is not a valid (M)CS 2020-11-05 15:48:04 +01:00
encoding.h encoding: use CSN.1 codec to generate Packet Uplink Assignment 2020-09-08 02:47:02 +07:00
gprs_bssgp_pcu.cpp TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
gprs_bssgp_pcu.h Rework NS configuration over the info indication 2020-10-13 08:45:30 +00:00
gprs_codel.c Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere 2020-03-16 10:31:56 +00:00
gprs_codel.h Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere 2020-03-16 10:31:56 +00:00
gprs_debug.cpp gprs_debug: Use only LOGL_NOTICE as default loglevel 2020-05-13 16:41:55 +00:00
gprs_debug.h TBF: add dedicated log categories 2018-01-19 18:49:16 +01:00
gprs_ms.cpp TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
gprs_ms.h TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
gprs_ms_storage.cpp TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
gprs_ms_storage.h TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
gprs_rlcmac.cpp paging: pass struct osmo_mobile_identity, not encoded IE bytes 2020-08-24 01:12:16 +00:00
gprs_rlcmac.h pdch: rcv pkt meas rep: Allocate MS object early in path and use it 2020-08-24 07:50:49 +00:00
gprs_rlcmac_meas.cpp pdch: rcv pkt meas rep: Allocate MS object early in path and use it 2020-08-24 07:50:49 +00:00
gprs_rlcmac_sched.cpp tbf: Make window() available to tbf base class 2020-10-24 22:14:42 +02:00
gprs_rlcmac_ts_alloc.cpp Fix several calls to LOGPAL 2020-10-23 17:13:04 +02:00
gsm_rlcmac.c cosmetic: Fix ws between if keyword and parenthesis 2020-10-29 11:34:17 +00:00
gsm_rlcmac.h gsm_rlcmac: use consistent naming for [Extended] Packet Timing Advance 2020-08-24 10:53:08 +00:00
gsm_timer.cpp gsm_timer: fix comparison of constant LONG_MAX with an integer 2020-01-29 06:14:54 +07:00
gsm_timer.h pcu_l1_if: add frame number to log output 2018-04-10 13:35:24 +02:00
llc.cpp bts: Drop specific functions to increase counters 2020-05-14 11:19:05 +00:00
llc.h Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere 2020-03-16 10:31:56 +00:00
mslot_class.c mslot_class: two more: use uint32_t to shift 1 << 31 2018-03-28 14:44:47 +02:00
mslot_class.h Simplify TS alloc: move slot check into functions 2018-02-21 12:08:40 +00:00
osmobts_sock.cpp Use the new NS2 lib 2020-10-06 16:38:38 +02:00
pcu_l1_if.cpp Fix configuration of initial_(m)cs 2020-11-04 21:39:43 +01:00
pcu_l1_if.h l1if: fix: s/pcu_rx_rach_ind_pdtch/pcu_rx_rach_ind_ptcch/g 2020-05-22 21:09:22 +07:00
pcu_main.cpp Move BTS initial values inside bts.cpp 2020-11-04 19:32:12 +00:00
pcu_utils.h Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere 2020-03-16 10:31:56 +00:00
pcu_vty.c Fix configuration of initial_(m)cs 2020-11-04 21:39:43 +01:00
pcu_vty.h vty: add attributes to VTY commands indicating when they apply 2020-10-08 07:16:31 +00:00
pcu_vty_functions.cpp cosmetic: Fix ws between if keyword and parenthesis 2020-10-29 11:34:17 +00:00
pcu_vty_functions.h vty: Add 'show bts pdch' command 2020-09-22 20:56:53 +02:00
pdch.cpp pdch: Process received CS1-4 data blocks regardless of egprs_enabled 2020-11-04 21:39:42 +01:00
pdch.h encoding: implement handing of hopping parameters 2020-09-08 02:47:02 +07:00
poll_controller.cpp Move out tbf subclasses from tbf.h to their own headers 2019-09-25 17:50:06 +02:00
poll_controller.h Update header includes 2018-02-19 08:43:46 +00:00
rlc.cpp Fix mcs_is_valid(): UNKNOWN value is not a valid (M)CS 2020-11-05 15:48:04 +01:00
rlc.h Get rid of class GprsCodingScheme 2020-05-20 11:07:07 +00:00
sba.cpp bts: Drop specific functions to increase counters 2020-05-14 11:19:05 +00:00
sba.h Update header includes 2018-02-19 08:43:46 +00:00
tbf.cpp TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
tbf.h TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
tbf.txt Doc: Update on README and tbf.txt 2012-12-18 10:04:03 +01:00
tbf_dl.cpp tbf_dl: Don't fake EGPRS MS class when no related info is available 2020-11-04 21:39:42 +01:00
tbf_dl.h tbf_dl: Update (egprs_)ms_class for already known MS 2020-10-29 12:38:17 +01:00
tbf_ul.cpp TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead 2020-11-10 17:06:39 +00:00
tbf_ul.h Move ul_tbf allocation code to correct file 2020-10-24 22:14:42 +02:00
wireshark_compat.h Move gsm_rlcmac.cpp -> .c 2020-03-30 10:08:02 +00:00