* Started logger replacement in epc main.
* Replaced loggers in nas and s1ap.
* Replace loggers in nas statics.
* Replaced loggers in s1ap ctx mngmt.
* Replace loggers in s1ap erab mngmt.
* Replaced loggers in s1ap mngmt proc.
* Replaced loggers in s1ap nas transport.
* Replaced loggers in s1ap paging.
* Replaced loggers in mme.
* Replaced loggers in mme gtpc.
* Started removing logger injection in init functions and cleaned up argument passing to nas statics.
* Remove logger injection from mme and s1ap.
* Replaced loggers in the hss class.
* Replaced loggers in gtpc.
* Replaced loggers in GTPU and SPGW.
* Replaced loggers in MBMS.
* Fix SQN incrementation arithmetic
Current implementation of increment_sqn function increments the 48 bits
SQN directly by 1 which is incorrect according to 3GPP TS 33.102 version
11.5.1 Annex C. This bug causes commercial UEs to report AUTHENTICATION
FAILURE EMM cause #21 "synch failure" when SQN is out of sync.
According to 3GPP TS 33.102 version 11.5.1 Annex C, 48 bits SQN consists
of 43 bits SEQ and 5 bits IND parts where SEQ are incremented during
generation of authentication vector or resync procedure. A
new IND value is also assigned when an authentication vector is
generated. However, resync procedure will use the same IND value.
This patch implements the increment_sqn function according to 3GPP TS
33.102 version 11.5.1 Annex C. A new function increment_seq_after_resync
is added to handle the special case of SQN arithmetic during SQN
resynchronization.
This patch is tested with two comercial UEs (Oneplus One and Oneplus 3T).
* Fix the maximum value of SEQ value to be 2^43-1
The SEQ value is 43 bits long and previous maximum value has a typo (one
extra F) which allows SEQ value to be 2^47-1. This patch corrects the typo.