aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-15 17:31:37 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-15 17:31:37 +0000
commit4267b09d2fe6c21b794d68fe611c07e722a36346 (patch)
tree19f6f28c10cbd9c8bbdb266e2894a4a782db2c11
parentb3a8934e2025251ea8490ff58822259b749e22ad (diff)
Queue congestion on REJECT (bug #2448)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3784 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xchannels/chan_iax2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 8427bdf01..b0888a96b 100755
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -5364,6 +5364,10 @@ retryowner:
iax2_destroy_nolock(fr.callno);
break;
case IAX_COMMAND_REJECT:
+ memset(&f, 0, sizeof(f));
+ f.frametype = AST_FRAME_CONTROL;
+ f.subclass = AST_CONTROL_CONGESTION;
+ iax2_queue_frame(fr.callno, &f);
if (iaxs[fr.callno]->provision) {
/* Send ack immediately, before we destroy */
send_command_immediate(iaxs[fr.callno], AST_FRAME_IAX, IAX_COMMAND_ACK, fr.ts, NULL, 0,fr.iseqno);