aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/bsc_rll.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbsc/src/bsc_rll.c')
-rw-r--r--openbsc/src/bsc_rll.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/openbsc/src/bsc_rll.c b/openbsc/src/bsc_rll.c
index 5c849271b..368c2665b 100644
--- a/openbsc/src/bsc_rll.c
+++ b/openbsc/src/bsc_rll.c
@@ -51,8 +51,11 @@ static LLIST_HEAD(bsc_rll_reqs);
static void complete_rllr(struct bsc_rll_req *rllr, enum bsc_rllr_ind type)
{
+ struct gsm_subscriber_connection *conn;
+
+ conn = &rllr->lchan->conn;
llist_del(&rllr->list);
- put_lchan(rllr->lchan, 0);
+ put_subscr_con(conn, 0);
rllr->cb(rllr->lchan, rllr->link_id, rllr->data, type);
talloc_free(rllr);
}
@@ -70,6 +73,7 @@ int rll_establish(struct gsm_lchan *lchan, u_int8_t sapi,
enum bsc_rllr_ind),
void *data)
{
+ struct gsm_subscriber_connection *conn;
struct bsc_rll_req *rllr = talloc_zero(tall_bsc_ctx, struct bsc_rll_req);
u_int8_t link_id;
if (!rllr)
@@ -83,7 +87,8 @@ int rll_establish(struct gsm_lchan *lchan, u_int8_t sapi,
lchan->type == GSM_LCHAN_TCH_H) && sapi != 0)
link_id |= 0x40;
- use_lchan(lchan);
+ conn = &lchan->conn;
+ use_subscr_con(conn);
rllr->lchan = lchan;
rllr->link_id = link_id;
rllr->cb = cb;