diff options
author | Olle Johansson <oej@edvina.net> | 2006-08-30 19:07:21 +0000 |
---|---|---|
committer | Olle Johansson <oej@edvina.net> | 2006-08-30 19:07:21 +0000 |
commit | 0ace854142d8611779d99dfb92dc12544566d95a (patch) | |
tree | 251d4bca94582f5945831cd136590c183706a444 /channels | |
parent | 8d1bf3298f6a322c44b036f8cc00b1058e2c526f (diff) |
Issue #7572 (Boesl) - hangup channel that get buggy 487 response (imported from 1.2)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index efc89caaa..a7b7bf81c 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -2987,6 +2987,7 @@ static int hangup_sip2cause(int cause) case 401: /* Unauthorized */ return AST_CAUSE_CALL_REJECTED; case 403: /* Not found */ + case 487: /* Call cancelled */ return AST_CAUSE_CALL_REJECTED; case 404: /* Not found */ return AST_CAUSE_UNALLOCATED; @@ -11827,6 +11828,8 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_ break; case 487: /* Response on INVITE that has been CANCELled */ /* channel now destroyed - dec the inUse counter */ + if (owner) + ast_queue_hangup(p->owner); update_call_counter(p, DEC_CALL_LIMIT); break; case 482: /* |