HACK: mobile: loopback voice frames

This commit is contained in:
Neels Hofmeyr 2020-03-03 17:17:06 +01:00 committed by Harald Welte
parent 419f617a3c
commit 1bafb2c125
1 changed files with 11 additions and 7 deletions

View File

@ -36,15 +36,19 @@ static int gsm_recv_voice(struct osmocom_ms *ms, struct msgb *msg)
{
struct gsm_data_frame *mncc;
/* Drop the l1ctl_info_dl header */
msgb_pull_to_l2(msg);
/* push mncc header in front of data */
mncc = (struct gsm_data_frame *)
msgb_push(msg, sizeof(struct gsm_data_frame));
mncc->msg_type = GSM_TCHF_FRAME;
mncc->callref = ms->mncc_entity.ref;
/* HACK: send voice frame back */
gsm_send_voice(ms, mncc);
/* distribute and then free */
if (ms->mncc_entity.mncc_recv && ms->mncc_entity.ref) {
/* Drop the l1ctl_info_dl header */
msgb_pull_to_l2(msg);
/* push mncc header in front of data */
mncc = (struct gsm_data_frame *)
msgb_push(msg, sizeof(struct gsm_data_frame));
mncc->msg_type = GSM_TCHF_FRAME;
mncc->callref = ms->mncc_entity.ref;
ms->mncc_entity.mncc_recv(ms, mncc->msg_type, mncc);
}