aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2018-03-09 22:15:53 +0100
committerHarald Welte <laforge@gnumonks.org>2018-03-09 22:16:44 +0100
commit58a95ac799034fdb60ec277eb23bc3c411d7c5e6 (patch)
tree3d36e1cd1703566c01806da99e5e73432660bcd9 /src
parentc2045474b1b500a6cc38c00cc807978ce9e8c5e5 (diff)
sysinfo.c: SI1 is optional; Send SI2 at TC=0 if no SI1 exists
SI1 is only required if frequency hopping is used or if NCH is used. So it's optional. If OsmoBTS has no SI1 configured, it will transmit the empty SI1 buffer at TC=0, and as a result no valid SI will be broadcast at TC=0. Change-Id: I41ab885c00e943199b2e939e98f30e267ecffbee Closes: OS#3051
Diffstat (limited to 'src')
-rw-r--r--src/common/sysinfo.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/common/sysinfo.c b/src/common/sysinfo.c
index cf863804..6f7a3874 100644
--- a/src/common/sysinfo.c
+++ b/src/common/sysinfo.c
@@ -73,7 +73,9 @@ uint8_t *bts_sysinfo_get(struct gsm_bts *bts, const struct gsm_time *g_time)
* present in a cell. If the MS finds another message
* when TC = 0, it can assume that System Information
* Type 1 is not in use. */
- return GSM_BTS_SI(bts, SYSINFO_TYPE_1);
+ if (GSM_BTS_HAS_SI(bts, SYSINFO_TYPE_1))
+ return GSM_BTS_SI(bts, SYSINFO_TYPE_1);
+ return GSM_BTS_SI(bts, SYSINFO_TYPE_2);
case 1:
/* A SI 2 message will be sent at least every time TC = 1. */
return GSM_BTS_SI(bts, SYSINFO_TYPE_2);