486 (and friends) are really BUSY (bug #5257)
authorMark Spencer <markster@digium.com>
Wed, 28 Sep 2005 04:08:57 +0000 (04:08 +0000)
committerMark Spencer <markster@digium.com>
Wed, 28 Sep 2005 04:08:57 +0000 (04:08 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6674 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 55f5448..b1903fc 100755 (executable)
@@ -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 */