aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/bsc_msc_ip.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2009-10-23 13:01:18 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2009-11-20 17:35:45 +0100
commit3fe910b9f1391ff576e9583dc813f267f4e4cead (patch)
tree627971edb135b1d01abe846a7efaa281a76e16c6 /openbsc/src/bsc_msc_ip.c
parent097bdeb77de0aad435dc99a89ca1b586e8872b55 (diff)
[bssap] First go at implementing channel assignment...
Diffstat (limited to 'openbsc/src/bsc_msc_ip.c')
-rw-r--r--openbsc/src/bsc_msc_ip.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/openbsc/src/bsc_msc_ip.c b/openbsc/src/bsc_msc_ip.c
index 27603a7eb..d82f06fc2 100644
--- a/openbsc/src/bsc_msc_ip.c
+++ b/openbsc/src/bsc_msc_ip.c
@@ -325,8 +325,12 @@ static int handle_modify_ack(struct msgb *msg)
/* modify RSL */
rc = gsm48_rx_rr_modif_ack(msg);
+ if (rc < 0)
+ gsm0808_send_assignment_failure(msg->lchan,
+ GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE, NULL);
+ else
+ gsm0808_send_assignment_compl(msg->lchan, 0);
- gsm0808_send_assignment_compl(msg->lchan, 0);
return 1;
}
@@ -440,7 +444,7 @@ static int handle_abisip_signal(unsigned int subsys, unsigned int signal,
rc = rsl_ipacc_mdcx(lchan, ntohl(local_addr.s_addr),
lchan->msc_data->rtp_port,
ts->abis_ip.conn_id,
- lchan->msc_data->rtp_payload2);
+ ts->abis_ip.rtp_payload2);
if (rc < 0) {
DEBUGP(DMSC, "Failed to send connect: %d\n", rc);
return rc;