diff options
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 3 | ||||
-rw-r--r-- | openbsc/src/bsc_msc_ip.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index eb9f0735e..5d5993364 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -145,6 +145,9 @@ struct bss_sccp_connection_data { struct llist_head sccp_queue; unsigned int sccp_queue_size; + /* which msc connection to use? */ + struct bsc_msc_connection *msc_con; + /* Active connections */ struct llist_head active_connections; }; diff --git a/openbsc/src/bsc_msc_ip.c b/openbsc/src/bsc_msc_ip.c index 37b6e7f50..ea78a52f7 100644 --- a/openbsc/src/bsc_msc_ip.c +++ b/openbsc/src/bsc_msc_ip.c @@ -326,6 +326,9 @@ static int open_sccp_connection(struct msgb *layer3) con_data->lchan = layer3->lchan; con_data->sccp = sccp_connection; + /* assign the outgoing msc connection */ + con_data->msc_con = bsc_gsmnet->msc_con; + sccp_connection->state_cb = msc_outgoing_sccp_state; sccp_connection->data_cb = msc_outgoing_sccp_data; sccp_connection->data_ctx = con_data; |