From 55db4ce54c1717345801b6b12d05b9500532d0e8 Mon Sep 17 00:00:00 2001 From: Moises Silva Date: Thu, 16 Jun 2011 13:40:36 -0400 Subject: [PATCH] freetdm: OPENZAP-151 --resolved SS7 ANM and REL message collision --- .../ftmod_sangoma_ss7/ftmod_sangoma_ss7_handle.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_handle.c b/libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_handle.c index 5deb9b0fc1..6fb9c82895 100644 --- a/libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_handle.c +++ b/libs/freetdm/src/ftmod/ftmod_sangoma_ss7/ftmod_sangoma_ss7_handle.c @@ -584,6 +584,20 @@ ftdm_status_t handle_con_cfm(uint32_t suInstId, uint32_t spInstId, uint32_t circ break; /**************************************************************************/ + case FTDM_CHANNEL_STATE_HANGUP_COMPLETE: + + /* already hangup complete, just ignore it */ + /* + * i.e. collision REL & ANM + * IAM -> + * <- ACM + * REL -> <- ANM (if REL gets processed first, ANM needs to be ignored) + * <- RLC + */ + SS7_INFO_CHAN(ftdmchan,"[CIC:%d]Rx ANM/CON Ignoring it because we already hung up\n", sngss7_info->circuit->cic); + + break; + /**************************************************************************/ default: /* incorrect state...reset the CIC */ SS7_INFO_CHAN(ftdmchan,"[CIC:%d]Rx ANM/CON\n", sngss7_info->circuit->cic);