diff options
author | Oliver Smith <osmith@sysmocom.de> | 2019-05-10 11:28:27 +0200 |
---|---|---|
committer | osmith <osmith@sysmocom.de> | 2019-05-15 08:52:50 +0000 |
commit | cdac620579b5bf44970b5f4bb11734fdfdf5bf59 (patch) | |
tree | 863be50aaf010be0b7ab0b3493bece6b5db92e4d | |
parent | 18506c850c3bbcbfa814e07dc02a17fdb5f7bb9a (diff) |
gsm_23_003: add GSM23003_MSISDN_{MIN,MAX}_DIGITS
Add the constant, so it can be used in create-subscriber-on-demand
related patches. ITU-T Rec. E.164 6.1 states that maximum international
number length should be 15. I did not find a source for a minimum
length, but I've added the constant and set it to 1 for consistency
(based on the existing osmo_msisdn_str_valid() function).
Related: OS#2542
Change-Id: Idc74f4d94ad44b9fc1b6d43178f5f33d551ebfb1
-rw-r--r-- | include/osmocom/gsm/protocol/gsm_23_003.h | 3 | ||||
-rw-r--r-- | src/gsm/gsm23003.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/include/osmocom/gsm/protocol/gsm_23_003.h b/include/osmocom/gsm/protocol/gsm_23_003.h index be1b157b..3e5c3e57 100644 --- a/include/osmocom/gsm/protocol/gsm_23_003.h +++ b/include/osmocom/gsm/protocol/gsm_23_003.h @@ -20,6 +20,9 @@ #define GSM23003_MME_CODE_NUM_BYTES 1 #define GSM23003_MME_GROUP_NUM_BYTES 2 #define GSM23003_MTMSI_NUM_BYTES 4 +/* Chapter 3.2 */ +#define GSM23003_MSISDN_MAX_DIGITS 15 /* ITU-T Rec. E.164 6.1 */ +#define GSM23003_MSISDN_MIN_DIGITS 1 /* Chapter 6.2.1 */ #define GSM23003_IMEI_TAC_NUM_DIGITS 8 #define GSM23003_IMEI_SNR_NUM_DIGITS 6 diff --git a/src/gsm/gsm23003.c b/src/gsm/gsm23003.c index 2252f706..a97ed079 100644 --- a/src/gsm/gsm23003.c +++ b/src/gsm/gsm23003.c @@ -69,7 +69,7 @@ bool osmo_imsi_str_valid(const char *imsi) */ bool osmo_msisdn_str_valid(const char *msisdn) { - return is_n_digits(msisdn, 1, 15); + return is_n_digits(msisdn, GSM23003_MSISDN_MIN_DIGITS, GSM23003_MSISDN_MAX_DIGITS); } /*! Determine whether the given IMEI is valid according to 3GPP TS 23.003, |