From b0150b7ad4610307308595d3fe1b28b31466e8de Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Mon, 16 Apr 2012 22:15:29 +0200 Subject: lchan: Refuse to activate a non-idle lchan. --- src/common/rsl.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/common/rsl.c') diff --git a/src/common/rsl.c b/src/common/rsl.c index 188d4391..d7d728a8 100644 --- a/src/common/rsl.c +++ b/src/common/rsl.c @@ -617,6 +617,13 @@ static int rsl_rx_chan_activ(struct msgb *msg) struct tlv_parsed tp; uint8_t type; + if (lchan->state != LCHAN_S_NONE) { + LOGP(DRSL, LOGL_ERROR, + "%s: error lchan is not available state: %s.\n", + gsm_lchan_name(lchan), gsm_lchans_name(lchan->state)); + return rsl_tx_chan_act_nack(lchan, RSL_ERR_EQUIPMENT_FAIL); + } + rsl_tlv_parse(&tp, msgb_l3(msg), msgb_l3len(msg)); /* 9.3.3 Activation Type */ -- cgit v1.2.3