aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2008-07-01 12:02:41 +0000
committeroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2008-07-01 12:02:41 +0000
commit19a61c2c2c687ab8eb4179f3821cc4c759fc9822 (patch)
treef0036789ee4df5d102969d2a8230e15a507489ec
parent652df6f2bb55dc93983df6fdca55bc33f5c4aa94 (diff)
Merged revisions 126790 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r126790 | oej | 2008-07-01 13:58:17 +0200 (Tis, 01 Jul 2008) | 14 lines 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: http://svn.digium.com/svn/asterisk/branches/1.6.0@126791 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--channels/chan_sip.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index e0d67d315..6b7b93156 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -16036,6 +16036,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);
@@ -16051,8 +16058,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;
}