mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-06 02:22:56 +00:00
freetdm: ss7 - added functions to clear flags for reset
This commit is contained in:
parent
dd529b0e3a
commit
bdcad14a46
@ -1136,7 +1136,13 @@ void ftdm_sangoma_ss7_process_state_change (ftdm_channel_t * ftdmchan)
|
|||||||
if (sngss7_test_flag (sngss7_info, FLAG_CKT_UCIC_UNBLK)) {
|
if (sngss7_test_flag (sngss7_info, FLAG_CKT_UCIC_UNBLK)) {
|
||||||
SS7_DEBUG_CHAN(ftdmchan, "Processing CKT_UCIC_UNBLK flag %s\n", "");;
|
SS7_DEBUG_CHAN(ftdmchan, "Processing CKT_UCIC_UNBLK flag %s\n", "");;
|
||||||
|
|
||||||
/* throw the channel into reset from our side since it is already in reset from the remote side */
|
/* remove the UCIC block flag */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_CKT_UCIC_BLOCK);
|
||||||
|
|
||||||
|
/* remove the UCIC unblock flag */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_CKT_UCIC_UNBLK);
|
||||||
|
|
||||||
|
/* throw the channel into reset to sync states */
|
||||||
sngss7_set_flag(sngss7_info, FLAG_RESET_TX);
|
sngss7_set_flag(sngss7_info, FLAG_RESET_TX);
|
||||||
|
|
||||||
/* bring the channel into restart again */
|
/* bring the channel into restart again */
|
||||||
|
@ -61,6 +61,11 @@ ftdm_status_t check_if_rx_grs_started(ftdm_span_t *ftdmspan);
|
|||||||
ftdm_status_t check_if_rx_grs_processed(ftdm_span_t *ftdmspan);
|
ftdm_status_t check_if_rx_grs_processed(ftdm_span_t *ftdmspan);
|
||||||
ftdm_status_t check_if_rx_gra_started(ftdm_span_t *ftdmspan);
|
ftdm_status_t check_if_rx_gra_started(ftdm_span_t *ftdmspan);
|
||||||
ftdm_status_t check_for_res_sus_flag(ftdm_span_t *ftdmspan);
|
ftdm_status_t check_for_res_sus_flag(ftdm_span_t *ftdmspan);
|
||||||
|
|
||||||
|
ftdm_status_t clear_rx_grs_flags(sngss7_chan_data_t *sngss7_info);
|
||||||
|
ftdm_status_t clear_tx_grs_flags(sngss7_chan_data_t *sngss7_info);
|
||||||
|
ftdm_status_t clear_rx_rsc_flags(sngss7_chan_data_t *sngss7_info);
|
||||||
|
ftdm_status_t clear_tx_rsc_flags(sngss7_chan_data_t *sngss7_info);
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
|
||||||
/* FUNCTIONS ******************************************************************/
|
/* FUNCTIONS ******************************************************************/
|
||||||
@ -752,7 +757,49 @@ ftdm_status_t check_for_res_sus_flag(ftdm_span_t *ftdmspan)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
|
ftdm_status_t clear_rx_grs_flags(sngss7_chan_data_t *sngss7_info)
|
||||||
|
{
|
||||||
|
/* clear all the flags related to an incoming GRS */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_RX);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_RX_DN);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_RX_CMPLT);
|
||||||
|
|
||||||
|
return FTDM_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
ftdm_status_t clear_tx_grs_flags(sngss7_chan_data_t *sngss7_info)
|
||||||
|
{
|
||||||
|
/* clear all the flags related to an outgoing GRS */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_BASE);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_TX);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_SENT);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_GRP_RESET_TX_RSP);
|
||||||
|
|
||||||
|
return FTDM_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
ftdm_status_t clear_rx_rsc_flags(sngss7_chan_data_t *sngss7_info)
|
||||||
|
{
|
||||||
|
/* clear all the flags related to an incoming RSC */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_RESET_RX);
|
||||||
|
|
||||||
|
return FTDM_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
ftdm_status_t clear_tx_rsc_flags(sngss7_chan_data_t *sngss7_info)
|
||||||
|
{
|
||||||
|
/* clear all the flags related to an outgoing RSC */
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_RESET_TX);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_RESET_SENT);
|
||||||
|
sngss7_clear_flag(sngss7_info, FLAG_RESET_TX_RSP);
|
||||||
|
|
||||||
|
return FTDM_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
/* For Emacs:
|
/* For Emacs:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user