summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2005-09-28 04:08:57 +0000
committerMark Spencer <markster@digium.com>2005-09-28 04:08:57 +0000
commitbca61024ca5861429afca248553ed23d09358e35 (patch)
tree86d4dcc624b0516a4d7df15111a4f44adcea477f /channels
parentbc596e35434fa12b4a65f6c7c0b24264416ef43f (diff)
486 (and friends) are really BUSY (bug #5257)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6674 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_sip.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 55f5448a4..b1903fc56 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -9738,6 +9738,10 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_
case 302: /* Moved temporarily */
case 305: /* Use Proxy */
parse_moved_contact(p, req);
+ /* Fall through */
+ case 486: /* Busy here */
+ case 600: /* Busy everywhere */
+ case 603: /* Decline */
if (p->owner)
ast_queue_control(p->owner, AST_CONTROL_BUSY);
break;
@@ -9753,10 +9757,7 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_
if (p->owner)
snprintf(p->owner->call_forward, sizeof(p->owner->call_forward), "Local/%s@%s", p->username, p->context);
/* Fall through */
- case 486: /* Busy here */
case 488: /* Not acceptable here - codec error */
- case 600: /* Busy everywhere */
- case 603: /* Decline */
case 480: /* Temporarily Unavailable */
case 404: /* Not Found */
case 410: /* Gone */