diff options
author | Oliver Smith <osmith@sysmocom.de> | 2022-04-26 16:53:14 +0200 |
---|---|---|
committer | Oliver Smith <osmith@sysmocom.de> | 2022-05-02 15:21:28 +0200 |
commit | 159246f94f233ecb3c0b610588747b414cfdb9ce (patch) | |
tree | 0702185f160b3ab4b0f49a81552114b76488cc88 /src/osmo-bsc/bts_trx.c | |
parent | aa6404f3f82fb05111d92b57d4db1546002ebca2 (diff) |
Check VTY config against features reported by BTS
* Don't copy features for osmo-bts and nanobts initially, wait until
BTS reported its features
* Checks for BTS features in VTY cmds: pass if features are not known
(not yet reported by the BTS), fail if the feature is missing
* Once BTS reports its features, check relevant VTY config parts again
Related: SYS#5922, OS#5538
Change-Id: I7fca42a39a4bc98a6ea8b9cfab28c4bad3a6a0aa
Diffstat (limited to 'src/osmo-bsc/bts_trx.c')
-rw-r--r-- | src/osmo-bsc/bts_trx.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/osmo-bsc/bts_trx.c b/src/osmo-bsc/bts_trx.c index fa27b05da..71d9fbf35 100644 --- a/src/osmo-bsc/bts_trx.c +++ b/src/osmo-bsc/bts_trx.c @@ -338,6 +338,20 @@ bool trx_has_valid_pchan_config(const struct gsm_bts_trx *trx) result = false; } } + + if (trx->bts->features_known) { + const struct bitvec *ft = &trx->bts->features; + + if (ts->hopping.enabled && !osmo_bts_has_feature(ft, BTS_FEAT_HOPPING)) { + LOGP(DNM, LOGL_ERROR, "TS%d has freq. hopping enabled, but BTS does not support it\n", i); + result = false; + } + + if (ts->tsc != -1 && !osmo_bts_has_feature(ft, BTS_FEAT_MULTI_TSC)) { + LOGP(DNM, LOGL_ERROR, "TS%d has TSC != BCC, but BTS does not support it\n", i); + result = false; + } + } } return result; |