bsc_api: The rr_cause is optional, pass it as a pointer

This commit is contained in:
Holger Hans Peter Freyther 2010-11-05 10:37:17 +01:00
parent 66dcd925c6
commit 45b575fd94
3 changed files with 8 additions and 6 deletions

View File

@ -20,7 +20,7 @@ struct bsc_api {
uint8_t rr_cause, uint8_t chosen_channel, uint8_t rr_cause, uint8_t chosen_channel,
uint8_t encr_alg_id, uint8_t speech_mode); uint8_t encr_alg_id, uint8_t speech_mode);
void (*assign_fail)(struct gsm_subscriber_connection *conn, void (*assign_fail)(struct gsm_subscriber_connection *conn,
uint16_t rr_cause); uint8_t cause, uint8_t *rr_cause);
int (*clear_request)(struct gsm_subscriber_connection *conn, int (*clear_request)(struct gsm_subscriber_connection *conn,
uint32_t cause); uint32_t cause);
}; };

View File

@ -45,7 +45,8 @@ static void bsc_assign_compl(struct gsm_subscriber_connection *conn, uint8_t rr_
{ {
} }
static void bsc_assign_fail(struct gsm_subscriber_connection *conn, uint32_t cause) static void bsc_assign_fail(struct gsm_subscriber_connection *conn,
uint8_t cause, uint8_t *rr_cause)
{ {
} }

View File

@ -203,7 +203,7 @@ int gsm0808_assign_req(struct gsm_subscriber_connection *conn, int chan_type, in
struct bsc_api *api; struct bsc_api *api;
api = conn->bts->network->bsc_api; api = conn->bts->network->bsc_api;
api->assign_fail(conn, 0); api->assign_fail(conn, 0, NULL);
return 0; return 0;
} }
@ -263,10 +263,11 @@ static void dispatch_dtap(struct gsm_subscriber_connection *conn,
break; break;
case GSM48_MT_RR_CHAN_MODE_MODIF_ACK: case GSM48_MT_RR_CHAN_MODE_MODIF_ACK:
rc = gsm48_rx_rr_modif_ack(msg); rc = gsm48_rx_rr_modif_ack(msg);
if (rc < 0 && api->assign_fail) if (rc < 0 && api->assign_fail) {
api->assign_fail(conn, api->assign_fail(conn,
GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE); GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE,
else if (rc >= 0 && api->assign_compl) NULL);
} else if (rc >= 0 && api->assign_compl)
api->assign_compl(conn, 0, api->assign_compl(conn, 0,
lchan_to_chosen_channel(conn->lchan), lchan_to_chosen_channel(conn->lchan),
conn->lchan->encr.alg_id, conn->lchan->encr.alg_id,