aboutsummaryrefslogtreecommitdiffstats
path: root/tests/ctrl
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2021-03-09 17:11:45 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2021-03-24 21:22:21 +0100
commit764449ec2ea6d6b45239278eae90613df8c93f59 (patch)
treef25eeef115083e20eaa7c4713b18d1889e7b865e /tests/ctrl
parentdc60505bc585b1d5f61aa7190b3a2f14fecacaa1 (diff)
fix/refactor neighbor config
The neighbor configuration storage is fundamentally broken: it requires all local cells to be configured before being able to list them as neighbors of each other. Upon config write-back, the neighbor config however is placed back inline with the other config, and hence a written-out neighbor config no longer works on program restart. The cause of this problem is that the config is stored as explicit pointers between local cells (struct gsm_bts), which of course requires the pointer to exist before being able to reference it. Instead, store the actual configuration that the user entered as-is, without pointers or references to objects that need to be ready. Resolve the neighbors every time a neighbor is needed. Hence the user may enter any config at any place in the config file, even non-working config (like a BTS number that doesn't exist), and the relation to actual local or remote neighbor cells is made at runtime. Abort program startup if the initial neighbor configuration contains errors. Related: OS#5018 Change-Id: I9ed992f8bfff888b3933733c0576f92d50f2625b
Diffstat (limited to 'tests/ctrl')
-rw-r--r--tests/ctrl/osmo-bsc-neigh-test.cfg5
1 files changed, 2 insertions, 3 deletions
diff --git a/tests/ctrl/osmo-bsc-neigh-test.cfg b/tests/ctrl/osmo-bsc-neigh-test.cfg
index 2fbc8f806..7ef8271fe 100644
--- a/tests/ctrl/osmo-bsc-neigh-test.cfg
+++ b/tests/ctrl/osmo-bsc-neigh-test.cfg
@@ -47,6 +47,8 @@ network
codec-support fr
gprs mode gprs
gprs routing area 5
+ ! local neigh, refers to bts 1:
+ neighbor cgi-ps 1 1 1 6 123
! remote neigh:
neighbor cgi-ps 23 42 423 2 5 arfcn 23 bsic 32
trx 0
@@ -134,9 +136,6 @@ network
timeslot 7
phys_chan_config TCH/F
hopping enabled 0
- bts 0
- ! local neigh, refers to bts 1:
- neighbor cgi-ps 1 1 1 6 123
msc 0
type normal
allow-emergency allow