From: Olle Johansson Date: Tue, 1 Jul 2008 11:58:17 +0000 (+0000) Subject: Merged revisions 126789 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~1837 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=42bed356d13ba680e38c82ee3f32919ce1c03d03;p=thirdparty%2Fasterisk.git Merged revisions 126789 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r126789 | oej | 2008-07-01 13:51:38 +0200 (Tis, 01 Jul 2008) | 6 lines Report 200 OK to all in-dialog OPTIONs requests (to confirm that the dialog exist). Don't bother checking the request URI. (closes issue #11264) Reported by: ibc ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@126790 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 64c9e9ec3a..cc861e76cc 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -17280,6 +17280,13 @@ static int handle_request_options(struct sip_pvt *p, struct sip_request *req) \todo Fix handle_request_options device handling with optional authentication (this needs to be fixed in 1.4 as well) */ + + if (p->lastinvite) { + /* if this is a request in an active dialog, just confirm that the dialog exists. */ + transmit_response_with_allow(p, "200 OK", req, 0); + return 0; + } + res = get_destination(p, req); build_contact(p); @@ -17295,8 +17302,7 @@ static int handle_request_options(struct sip_pvt *p, struct sip_request *req) /* Destroy if this OPTIONS was the opening request, but not if it's in the middle of a normal call flow. */ - if (!p->lastinvite) - sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT); + sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT); return res; }