diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-09-16 00:53:37 +0800 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-09-16 02:16:02 +0800 |
commit | 79f763fe9151b06bea6fa2d1c94d71b86db4539e (patch) | |
tree | 8696ea51df8562c79480adcd706f0bf08496944f /openbsc/src | |
parent | a2aedad00541a020b2083fb31ba14d8670a5c26f (diff) |
bsc: Keep all active subscriber connections in a list.
Diffstat (limited to 'openbsc/src')
-rw-r--r-- | openbsc/src/bsc_api.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/openbsc/src/bsc_api.c b/openbsc/src/bsc_api.c index 6c2a467e4..5048f2b96 100644 --- a/openbsc/src/bsc_api.c +++ b/openbsc/src/bsc_api.c @@ -33,6 +33,8 @@ #include <osmocore/talloc.h> +static LLIST_HEAD(sub_connections); + static void rll_ind_cb(struct gsm_lchan *, uint8_t, void *, enum bsc_rllr_ind); static void send_sapi_reject(struct gsm_subscriber_connection *conn, int link_id); @@ -48,6 +50,7 @@ struct gsm_subscriber_connection *subscr_con_allocate(struct gsm_lchan *lchan) conn->lchan = lchan; conn->bts = lchan->ts->trx->bts; lchan->conn = conn; + llist_add_tail(&conn->entry, &sub_connections); return conn; } @@ -70,6 +73,8 @@ void subscr_con_free(struct gsm_subscriber_connection *conn) if (conn->ho_lchan) LOGP(DNM, LOGL_ERROR, "The ho_lchan should have been cleared.\n"); + llist_del(&conn->entry); + lchan = conn->lchan; talloc_free(conn); |