summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMatt O'Gorman <mogorman@digium.com>2006-01-20 01:07:46 +0000
committerMatt O'Gorman <mogorman@digium.com>2006-01-20 01:07:46 +0000
commitbc133ed475fa36f6f91950388e0039b16df907ad (patch)
treefbf536db5b7a7fb1767e6e3ded8d200bd886da35 /channels
parentad5eaa9acac0f1487c8371be05929e125d0e9724 (diff)
Merged revisions 8320 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r8320 | mogorman | 2006-01-19 19:00:46 -0600 (Thu, 19 Jan 2006) | 3 lines solved problem with delayreject and iax trunking bug 4291 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8323 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_iax2.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 202eb53f5..6238366c8 100644
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -4888,6 +4888,8 @@ static int raw_hangup(struct sockaddr_in *sin, unsigned short src, unsigned shor
fh.iseqno = 0;
fh.type = AST_FRAME_IAX;
fh.csub = compress_subclass(IAX_COMMAND_INVAL);
+ if (iaxdebug)
+ iax_showframe(NULL, &fh, 0, sin, 0);
#if 0
if (option_debug)
#endif
@@ -6753,6 +6755,10 @@ retryowner:
break;
if (ies.provverpres && ies.serviceident && sin.sin_addr.s_addr)
check_provisioning(&sin, fd, ies.serviceident, ies.provver);
+ /* If we're in trunk mode, do it now, and update the trunk number in our frame before continuing */
+ if (ast_test_flag(iaxs[fr.callno], IAX_TRUNK)) {
+ fr.callno = make_trunk(fr.callno, 1);
+ }
/* For security, always ack immediately */
if (delayreject)
send_command_immediate(iaxs[fr.callno], AST_FRAME_IAX, IAX_COMMAND_ACK, fr.ts, NULL, 0,fr.iseqno);
@@ -6763,10 +6769,6 @@ retryowner:
ast_log(LOG_NOTICE, "Rejected connect attempt from %s, who was trying to reach '%s@%s'\n", ast_inet_ntoa(iabuf, sizeof(iabuf), sin.sin_addr), iaxs[fr.callno]->exten, iaxs[fr.callno]->context);
break;
}
- /* If we're in trunk mode, do it now, and update the trunk number in our frame before continuing */
- if (ast_test_flag(iaxs[fr.callno], IAX_TRUNK)) {
- fr.callno = make_trunk(fr.callno, 1);
- }
/* This might re-enter the IAX code and need the lock */
if (strcasecmp(iaxs[fr.callno]->exten, "TBD")) {
ast_mutex_unlock(&iaxsl[fr.callno]);