diff options
Diffstat (limited to 'openbsc/src/bsc_rll.c')
-rw-r--r-- | openbsc/src/bsc_rll.c | 9 |
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; |