aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2019-05-10 11:28:27 +0200
committerosmith <osmith@sysmocom.de>2019-05-15 08:52:50 +0000
commitcdac620579b5bf44970b5f4bb11734fdfdf5bf59 (patch)
tree863be50aaf010be0b7ab0b3493bece6b5db92e4d
parentgsm0808: Introduce Osmocom extensions to announce Osmux support (diff)
downloadlibosmocore-cdac620579b5bf44970b5f4bb11734fdfdf5bf59.tar.xz
libosmocore-cdac620579b5bf44970b5f4bb11734fdfdf5bf59.zip
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.h3
-rw-r--r--src/gsm/gsm23003.c2
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,