summaryrefslogtreecommitdiffstats
path: root/include/osmocom/gsm
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2017-10-04 03:15:47 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2017-10-05 19:44:28 +0200
commit9cd1e7417e76c98094a502131af779145a77c7b9 (patch)
treebe447dced7f7e891271c8f88b3b8b738db4a2357 /include/osmocom/gsm
parentee497f245e78929ddb69ba1f06d27bcc886f6597 (diff)
add osmo_imsi_str_valid() and osmo_msisdn_str_valid()
Add GSM23003_IMSI_MIN_DIGITS definition. Add regression test gsm23003_test.c to test the two new functions. Will be used by OsmoHLR to validate VTY and CTRL input. Change-Id: I1e94f5b0717b947d2a7a7d36bacdf04a75cb3522
Diffstat (limited to 'include/osmocom/gsm')
-rw-r--r--include/osmocom/gsm/gsm23003.h4
-rw-r--r--include/osmocom/gsm/protocol/gsm_23_003.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/include/osmocom/gsm/gsm23003.h b/include/osmocom/gsm/gsm23003.h
index 2bc75837..dd41bc5b 100644
--- a/include/osmocom/gsm/gsm23003.h
+++ b/include/osmocom/gsm/gsm23003.h
@@ -3,6 +3,7 @@
#pragma once
#include <stdint.h>
+#include <stdbool.h>
/* 23.003 Chapter 12.1 */
struct osmo_plmn_id {
@@ -81,3 +82,6 @@ struct osmo_guti {
struct osmo_gummei gummei;
uint32_t mtmsi;
};
+
+bool osmo_imsi_str_valid(const char *imsi);
+bool osmo_msisdn_str_valid(const char *msisdn);
diff --git a/include/osmocom/gsm/protocol/gsm_23_003.h b/include/osmocom/gsm/protocol/gsm_23_003.h
index 94243feb..0e669399 100644
--- a/include/osmocom/gsm/protocol/gsm_23_003.h
+++ b/include/osmocom/gsm/protocol/gsm_23_003.h
@@ -4,6 +4,7 @@
/* Chapter 2.2 */
#define GSM23003_IMSI_MAX_DIGITS 15
+#define GSM23003_IMSI_MIN_DIGITS 6
/* Chapter 2.4 */
#define GSM23003_TMSI_NUM_BYTES 4
/* Chapter 2.5 */