aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2020-06-26 13:09:44 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2020-06-26 13:09:44 +0200
commit43f0bce25325e94a7eb6584bf9d01152014aa7c9 (patch)
tree9d302c024786bb1578015d40f593d8402d7a178c
parent81b610ea2c0c3580d172b34179d7a5486a31df29 (diff)
gprs_ms: Small clean ups in IMSI storage related code
-rw-r--r--src/gprs_ms.cpp5
-rw-r--r--src/gprs_ms.h4
2 files changed, 5 insertions, 4 deletions
diff --git a/src/gprs_ms.cpp b/src/gprs_ms.cpp
index 1ec8eda1..341826ca 100644
--- a/src/gprs_ms.cpp
+++ b/src/gprs_ms.cpp
@@ -120,7 +120,7 @@ GprsMs::GprsMs(BTS *bts, uint32_t tlli) :
LOGP(DRLCMAC, LOGL_INFO, "Creating MS object, TLLI = 0x%08x\n", tlli);
- m_imsi[0] = 0;
+ m_imsi[0] = '\0';
memset(&m_timer, 0, sizeof(m_timer));
m_timer.cb = GprsMs::timeout;
m_llc_queue.init();
@@ -463,8 +463,7 @@ void GprsMs::set_imsi(const char *imsi)
"Modifying MS object, TLLI = 0x%08x, IMSI '%s' -> '%s'\n",
tlli(), m_imsi, imsi);
- strncpy(m_imsi, imsi, sizeof(m_imsi));
- m_imsi[sizeof(m_imsi) - 1] = '\0';
+ osmo_strlcpy(m_imsi, imsi, sizeof(m_imsi));
}
void GprsMs::set_ta(uint8_t ta_)
diff --git a/src/gprs_ms.h b/src/gprs_ms.h
index f7b5c367..1e5a1558 100644
--- a/src/gprs_ms.h
+++ b/src/gprs_ms.h
@@ -32,6 +32,8 @@ extern "C" {
#include <osmocom/core/timer.h>
#include <osmocom/core/linuxlist.h>
+ #include <osmocom/gsm/protocol/gsm_23_003.h>
+
#include "coding_scheme.h"
}
@@ -159,7 +161,7 @@ private:
uint32_t m_new_dl_tlli;
/* store IMSI for look-up and PCH retransmission */
- char m_imsi[16];
+ char m_imsi[OSMO_IMSI_BUF_SIZE];
uint8_t m_ta;
uint8_t m_ms_class;
uint8_t m_egprs_ms_class;