X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=gsm_bs.cpp;h=97be9425ac41210dad46d68c444b91c33824d2c0;hp=e9b6be80bf4450c6fcfaf95de9c35e1f963150de;hb=6a007f2fdee35b93048fb38c5d1ed20836901b57;hpb=a3b269f357b7e6b74d91a942f874ee041320dce7 diff --git a/gsm_bs.cpp b/gsm_bs.cpp index e9b6be8..97be942 100644 --- a/gsm_bs.cpp +++ b/gsm_bs.cpp @@ -807,6 +807,13 @@ void Pgsm_bs::message_setup(unsigned int epoint_id, int message_id, union parame struct lcr_msg *message; struct epoint_list *epointlist; struct gsm_mncc *mncc; + struct interface *interface; + + interface = getinterfacebyname(p_interface_name); + if (!interface) { + PERROR("Cannot find interface %s.\n", p_interface_name); + return; + } /* copy setup infos to port */ memcpy(&p_callerinfo, ¶m->setup.callerinfo, sizeof(p_callerinfo)); @@ -1010,6 +1017,14 @@ void Pgsm_bs::message_setup(unsigned int epoint_id, int message_id, union parame add_trace("redir", "number", "%s", mncc->redirecting.number); } + if (interface->gsm_bs_hr) { + add_trace("lchan", "type", "TCH/H or TCH/F"); + mncc->lchan_type = GSM_LCHAN_TCH_H; + } else { + add_trace("lchan", "type", "TCH/F"); + mncc->lchan_type = GSM_LCHAN_TCH_F; + } + end_trace(); send_and_free_mncc(p_g_lcr_gsm, mncc->msg_type, mncc);