From d3504cd159b5edf063fb692fdbfc4788bfe9ebe4 Mon Sep 17 00:00:00 2001
From: Matthew Fredrickson <creslin@digium.com>
Date: Tue, 11 Sep 2007 23:07:49 +0000
Subject: [PATCH] Fix to make sure we don't hangup a call when getting a RLC
 without sending REL.  Found making sure we are Q.784 (the SS7 test
 specification) compliant

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/chan_zap.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index f7efa069f5..edcc0e5a7f 100644
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -8903,7 +8903,10 @@ static void *ss7_linkset(void *data)
 				} else {
 					p = linkset->pvts[chanpos];
 					ast_mutex_lock(&p->lock);
-					p->ss7call = NULL;
+					if (p->alreadyhungup)
+						p->ss7call = NULL;
+					else
+						ast_log(LOG_NOTICE, "Received RLC out and we haven't sent REL.  Ignoring.\n");
 					ast_mutex_unlock(&p->lock);
 				}
 				break;
-- 
GitLab