diff options
author | Mark Spencer <markster@digium.com> | 2004-10-22 13:18:20 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2004-10-22 13:18:20 +0000 |
commit | 3c8a994aed5b1676b0d8a7ee58c8d284ef5bcb7a (patch) | |
tree | 5c3d241b4eb537914b3a9c1ae1ac22b979c57501 /channels | |
parent | e5091a2b3385951f68464e98ac0c4f66d9a3fc34 (diff) |
Handle unknown 1xx reponses as 100 (bug #2698)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4043 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_sip.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 1a7f04bee..8c58d20d8 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -6823,6 +6823,11 @@ static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_ p->alreadygone = 1; if (!p->owner) p->needdestroy = 1; + } else if ((resp >= 100) && (resp < 200)) { + /* Unknown 1xx repsonses should be treated as 100 */ + if (!strcasecmp(msg, "INVITE")) { + sip_cancel_destroy(p); + } } else ast_log(LOG_NOTICE, "Dunno anything about a %d %s response from %s\n", resp, rest, p->owner ? p->owner->name : ast_inet_ntoa(iabuf, sizeof(iabuf), p->sa.sin_addr)); } |