aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo-bts-sysmo/oml.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2013-01-25 18:55:50 +0100
committerHarald Welte <laforge@gnumonks.org>2013-03-24 09:05:05 +0100
commit0809ae69415d90c2777eec58bd2d5e3485e880fb (patch)
tree1f8216f77fa5824c22a1588f368d213ae30cb6db /src/osmo-bts-sysmo/oml.c
parent4c4fd284aec75ab8cc2f415a8a4491fd03a5a190 (diff)
sysmobts: Do not re-configure the channel on non-active channels
In case the channel is not active we can omit the external requests to modify it. For the channel modification the higher level is already acking it and for the ciphering it is probably too late to do anything.
Diffstat (limited to 'src/osmo-bts-sysmo/oml.c')
-rw-r--r--src/osmo-bts-sysmo/oml.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c
index f2b7730c..452cfe3f 100644
--- a/src/osmo-bts-sysmo/oml.c
+++ b/src/osmo-bts-sysmo/oml.c
@@ -1180,6 +1180,10 @@ int l1if_set_ciphering(struct femtol1_hdl *fl1h,
{
int dir;
+ /* ignore the request when the channel is not active */
+ if (lchan->state != LCHAN_S_ACTIVE)
+ return -1;
+
if (dir_downlink)
dir = GsmL1_Dir_RxUplink;
else
@@ -1192,6 +1196,9 @@ int l1if_set_ciphering(struct femtol1_hdl *fl1h,
int bts_model_rsl_mode_modify(struct gsm_lchan *lchan)
{
+ if (lchan->state != LCHAN_S_ACTIVE)
+ return -1;
+
/* channel mode, encryption and/or multirate have changed */
/* update multi-rate config */