diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2011-06-04 15:12:57 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2012-03-16 11:56:10 +0100 |
commit | f936fb4086b073ca72b9e77e437b908acd0288f6 (patch) | |
tree | 4ac21d8684c37041e129685e3649867d83f92a69 /openbsc/src | |
parent | 4cdb050d132cb4a9f35f0ab1165f58f040132afe (diff) |
bsc: Move the bsc_filter to use the osmo_bsc_sccp_con
Diffstat (limited to 'openbsc/src')
-rw-r--r-- | openbsc/src/osmo-bsc/osmo_bsc_bssap.c | 4 | ||||
-rw-r--r-- | openbsc/src/osmo-bsc/osmo_bsc_filter.c | 13 |
2 files changed, 8 insertions, 9 deletions
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_bssap.c b/openbsc/src/osmo-bsc/osmo_bsc_bssap.c index a4a544759..42a389791 100644 --- a/openbsc/src/osmo-bsc/osmo_bsc_bssap.c +++ b/openbsc/src/osmo-bsc/osmo_bsc_bssap.c @@ -297,7 +297,6 @@ static int bssmap_handle_assignm_req(struct osmo_bsc_sccp_con *conn, { struct msgb *resp; struct osmo_msc_data *msc; - struct gsm_network *network; struct tlv_parsed tp; uint8_t *data; uint16_t cic; @@ -311,7 +310,6 @@ static int bssmap_handle_assignm_req(struct osmo_bsc_sccp_con *conn, return -1; } - network = conn->conn->bts->network; tlv_parse(&tp, gsm0808_att_tlvdef(), msg->l4h + 1, length - 1, 0, 0); if (!TLVP_PRESENT(&tp, GSM0808_IE_CHANNEL_TYPE)) { @@ -358,7 +356,7 @@ static int bssmap_handle_assignm_req(struct osmo_bsc_sccp_con *conn, * the correct value. */ full_rate = 0; - msc = &network->bsc_data->msc; + msc = conn->msc; for (supported = 0; chan_mode == GSM48_CMODE_SIGN && supported < msc->audio_length; ++supported) { diff --git a/openbsc/src/osmo-bsc/osmo_bsc_filter.c b/openbsc/src/osmo-bsc/osmo_bsc_filter.c index fce38ce81..9d6909caa 100644 --- a/openbsc/src/osmo-bsc/osmo_bsc_filter.c +++ b/openbsc/src/osmo-bsc/osmo_bsc_filter.c @@ -122,13 +122,13 @@ int bsc_scan_bts_msg(struct gsm_subscriber_connection *conn, struct msgb *msg) static void send_welcome_ussd(struct gsm_subscriber_connection *conn) { - struct gsm_network *net; - net = conn->bts->network; + struct osmo_bsc_sccp_con *bsc; - if (!net->bsc_data->msc.ussd_welcome_txt) + bsc = conn->sccp_con; + if (!bsc || !bsc->msc->ussd_welcome_txt); return; - gsm0480_send_ussdNotify(conn, 1, net->bsc_data->msc.ussd_welcome_txt); + gsm0480_send_ussdNotify(conn, 1, bsc->msc->ussd_welcome_txt); gsm0480_send_releaseComplete(conn); } @@ -137,6 +137,7 @@ static void send_welcome_ussd(struct gsm_subscriber_connection *conn) */ int bsc_scan_msc_msg(struct gsm_subscriber_connection *conn, struct msgb *msg) { + struct osmo_msc_data *msc; struct gsm_network *net; struct gsm48_loc_area_id *lai; struct gsm48_hdr *gh; @@ -150,10 +151,10 @@ int bsc_scan_msc_msg(struct gsm_subscriber_connection *conn, struct msgb *msg) gh = (struct gsm48_hdr *) msgb_l3(msg); mtype = gh->msg_type & 0xbf; net = conn->bts->network; + msc = conn->sccp_con->msc; if (mtype == GSM48_MT_MM_LOC_UPD_ACCEPT) { - if (net->bsc_data->msc.core_ncc != -1 || - net->bsc_data->msc.core_mcc != -1) { + if (msc->core_ncc != -1 || msc->core_mcc != -1) { if (msgb_l3len(msg) >= sizeof(*gh) + sizeof(*lai)) { lai = (struct gsm48_loc_area_id *) &gh->data[0]; gsm48_generate_lai(lai, net->country_code, |