mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-13 07:45:26 +00:00
added code to ftdm_sangoma_ss7_run api to avoid code execution for M2UA
SG
This commit is contained in:
parent
23ca7f8fed
commit
4a99dc7fc7
@ -356,14 +356,7 @@ static void *ftdm_sangoma_ss7_run(ftdm_thread_t * me, void *obj)
|
||||
/* set IN_THREAD flag so that we know this thread is running */
|
||||
ftdm_set_flag (ftdmspan, FTDM_SPAN_IN_THREAD);
|
||||
|
||||
if(SNG_SS7_OPR_MODE_M2UA_SG == g_ftdm_operating_mode){
|
||||
ftdm_log (FTDM_LOG_INFO, "FreeTDM running as M2UA_SG mode, freetdm dont have to do anything \n");
|
||||
|
||||
while (ftdm_running () && !(ftdm_test_flag (ftdmspan, FTDM_SPAN_STOP_THREAD))) {
|
||||
continue;
|
||||
}
|
||||
goto ftdm_sangoma_ss7_stop;
|
||||
}
|
||||
|
||||
/* get an interrupt queue for this span for channel state changes */
|
||||
if (ftdm_queue_get_interrupt (ftdmspan->pendingchans, &ftdm_sangoma_ss7_int[0]) != FTDM_SUCCESS) {
|
||||
@ -377,6 +370,40 @@ static void *ftdm_sangoma_ss7_run(ftdm_thread_t * me, void *obj)
|
||||
goto ftdm_sangoma_ss7_run_exit;
|
||||
}
|
||||
|
||||
if(SNG_SS7_OPR_MODE_M2UA_SG == g_ftdm_operating_mode){
|
||||
ftdm_log (FTDM_LOG_INFO, "FreeTDM running as M2UA_SG mode, freetdm dont have to do anything \n");
|
||||
|
||||
while (ftdm_running () && !(ftdm_test_flag (ftdmspan, FTDM_SPAN_STOP_THREAD))) {
|
||||
|
||||
switch ((ftdm_interrupt_multiple_wait(ftdm_sangoma_ss7_int, ftdm_array_len(ftdm_sangoma_ss7_int), 100))) {
|
||||
|
||||
case FTDM_SUCCESS: /* process all pending state changes */
|
||||
|
||||
SS7_DEVEL_DEBUG ("ftdm_interrupt_wait FTDM_SUCCESS on span = %d\n",ftdmspan->span_id);
|
||||
|
||||
/**********************************************************************/
|
||||
case FTDM_TIMEOUT:
|
||||
SS7_DEVEL_DEBUG ("ftdm_interrupt_wait timed-out on span = %d\n",ftdmspan->span_id);
|
||||
|
||||
break;
|
||||
/**********************************************************************/
|
||||
case FTDM_FAIL:
|
||||
SS7_ERROR ("ftdm_interrupt_wait returned error!\non span = %d\n", ftdmspan->span_id);
|
||||
|
||||
break;
|
||||
/**********************************************************************/
|
||||
default:
|
||||
SS7_ERROR("ftdm_interrupt_wait returned with unknown code on span = %d\n",ftdmspan->span_id);
|
||||
|
||||
break;
|
||||
/**********************************************************************/
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
goto ftdm_sangoma_ss7_stop;
|
||||
}
|
||||
|
||||
while (ftdm_running () && !(ftdm_test_flag (ftdmspan, FTDM_SPAN_STOP_THREAD))) {
|
||||
int x = 0;
|
||||
if (b_alarm_test) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user