aboutsummaryrefslogtreecommitdiffstats
path: root/src/libmsc/gsm_04_08.c
AgeCommit message (Collapse)AuthorFilesLines
2017-12-01HO: MNCC interface uses lchan_mode and lchan_type to modify channelAndreas Eversberg1-2/+68
The MNCC application must provide the lchan_type with the lchan_mode, since FR and HR codec depends on given lchan_type. In case of AMR, the lchan_type is ignored and an available channel type is selected. In case of EFR, the given lchan_type (must be full rate) is used.
2017-12-01HO: Remove all TCH rates from bearer capability that are not availableAndreas Eversberg1-0/+11
When the MNCC application negotiates the codec, it must be sure that the TCH rates of the neotiation results can be assigned to the MS. Therefore not only the codecs that are unsupported by BTS are removed, but also the codecs that require channels that are not available.
2017-12-01HO: Store bearer capabilities of MS at connection structure for later useAndreas Eversberg1-0/+10
Handover might require change in codec, especially when switching between AFS (AMR on TCH/F) and AHS (AMR on TCH/H). In this case the handover decision must know if a different target rate is supported by the MS or not.
2017-12-01Fix: Handle CM service request on already secured channel correctlyAndreas Eversberg1-0/+5
A CM service request must be acknowledged also, when encryption is already enabled. Without encryption enabled, the security status is GSM_SECURITY_NOTAVAIL, which causes a CM service acknowledge. On initial CM service request, the security status is GSM_SECURITY_SUCCEED, if encryption is enabled. This will not lead to an acknowledge, because the cyphering command implies an acknowlege. An additional CM service request requires an acknowledge, so I added a new security status: GSM_SECURITY_ALREADY
2017-12-01Allow handling of TCH/F and TCH/H frames from layer 4Andreas Eversberg1-2/+3
2017-12-01osmo-nitb support for codec negotiationAndreas Eversberg1-1/+14
Since codec negotiation is done automatically, there is no need to define codec for TCH/F and TCH/H via VTY anymore.
2017-12-01Fix: If half rate channel is used, indicate hr when modifying channel modeAndreas Eversberg1-1/+2
2017-12-01Add check for non existing lchan at tch_frame_down()Andreas Eversberg1-0/+4
Traffic cannot sent to BTS, if there is (currently) no logical channel associated with the transaction.
2017-12-01Each BTS can be configured for speech support (other than GSM full rate)Andreas Eversberg1-0/+28
Speech codings which are not supported by BTS will be removed from the bearer capability information element after parsing. This way it is not required for the MNCC application to consider support of each BTS. Only GSM full rate is supported by default.
2017-12-01Finished support for all codecs (RTP bridge and MNCC interface)Andreas Eversberg1-1/+2
The codes is not yet tested. AMR rate is currently fixed to 5.9k.
2017-12-01Allow dynamic RTP payload types between application and MNCC interfaceAndreas Eversberg1-0/+2
Since EFR/AMR/HR codecs use dynamic RTP payload, the payload type can be set. If it is set, the frame type must be set also, so OpenBSC knows what frame types are received via RTP. This modification only affects traffic beween application and MNCC interface, not the RTP traffic between OpenBSC and BTS.
2017-12-01Adding traffic forwarding via RTP to remote applicationAndreas Eversberg1-36/+139
Instead of forwarding traffic through MNCC interface, traffic can now be forwarded to a given RTP destination. A special MNCC message is used for that. The traffic can still be forwarded through MNCC interface when this special MNCC message is not used. It also works with E1 based BTSs. In conjunction with LCR's "rtp-bridge" feature, the RTP traffic can be directly exchanged with a remote SIP endpoint, so that the traffic is not forwarded by LCR itself. This way the performance of handling traffic only depends on OpenBSC and the remote SIP endpoint. Also the traffic is exchanged with the SIP endpoint without transcoding, to have maximum performance.
2017-12-01DROP openbsc PATH ELEMENT FOR MERGINGNeels Hofmeyr1-0/+3283
Change-Id: I8f6dd67b53c1ecff88e17baa4f7417a68466990f