Actions
Bug #3784
closedosmo-bsc ignores requested channel type in ASSIGNEMENT REQUESTS for signalling channels
Start date:
02/06/2019
Due date:
% Done:
50%
Spec Reference:
Description
In bssmap_handle_assignm_req , if channel type is of GSM0808_CHAN_SIGN it just creates an a request for a signaling channel but never looks at the ct.ch_rate_type fields to see what kind of channel is really requested. Instead in the assignement fsm and throuh lchan_select_by_chan_mode, it will always assume a signalling channel is a SDCCH.
Also in the assignement fsm, if it sees the current channel mode supports the requested mode (and independently of the channel type requests in ct.ch_rate_type), it will ignore it and not do anything.
struct gsm0808_channel_type ct;
ct.ch_indctr = GSM0808_CHAN_SIGN;
ct.ch_rate_type = GSM0808_SPEECH_FULL_BM; /* libosmocore doesn't actually define constants for signalling mode channels but this one is compatible in value */
ct.perm_spch[0] = 0; /* spare but must be present ! */
ct.perm_spch_len = 1;
msg = gsm0808_create_ass(&ct, NULL, NULL, NULL, NULL);
osmo_sccp_tx_data_msg(conn->a.scu, conn->a.conn_id, msg);
Actions