aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openbsc/src/libbsc/bts_ipaccess_nanobts.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/openbsc/src/libbsc/bts_ipaccess_nanobts.c b/openbsc/src/libbsc/bts_ipaccess_nanobts.c
index fc7bf2897..9fa03bfe6 100644
--- a/openbsc/src/libbsc/bts_ipaccess_nanobts.c
+++ b/openbsc/src/libbsc/bts_ipaccess_nanobts.c
@@ -38,6 +38,7 @@
#include <osmocom/gsm/ipa.h>
#include <osmocom/abis/ipaccess.h>
#include <osmocom/core/logging.h>
+#include <openbsc/ipaccess.h>
extern struct gsm_network *bsc_gsmnet;
@@ -354,7 +355,10 @@ static int nm_statechg_event(int evt, struct nm_statechg_signal_data *nsd)
new_state->availability == NM_AVSTATE_DEPENDENCY) {
enum abis_nm_chan_comb ccomb =
abis_nm_chcomb4pchan(ts->pchan);
- abis_nm_set_channel_attr(ts, ccomb);
+ if (abis_nm_set_channel_attr(ts, ccomb) == -EINVAL) {
+ ipaccess_drop_oml(trx->bts);
+ return -1;
+ }
abis_nm_chg_adm_state(trx->bts, obj_class,
trx->bts->bts_nr, trx->nr, ts->nr,
NM_STATE_UNLOCKED);