From 5873462c2e0bf74ecfd316db3ece34424870acdf Mon Sep 17 00:00:00 2001 From: Olle Johansson <oej@edvina.net> Date: Sun, 23 Apr 2006 06:22:29 +0000 Subject: [PATCH] - Add doxygen documentation for sipsock_read locking - Improve documentation of pedantic (related to issue #7016) From the air above Russia... git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22163 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_sip.c | 5 +++++ configs/sip.conf.sample | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/channels/chan_sip.c b/channels/chan_sip.c index cfbcb16086..276577dd16 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -61,6 +61,8 @@ * if it's a response to an outbound request, it's sent to handle_response(). * If it is a request, handle_request sends it to one of a list of functions * depending on the request type - INVITE, OPTIONS, REFER, BYE, CANCEL etc + * sipsock_read locks the ast_channel if it exists (an active call) and + * unlocks it after we have processed the SIP message. * * A new INVITE is sent to handle_request_invite(), that will end up * starting a new channel in the PBX, the new channel after that executing @@ -11867,6 +11869,7 @@ static int handle_request(struct sip_pvt *p, struct sip_request *req, struct soc } /*! \brief Read data from SIP socket +\note sipsock_read locks the owner channel while we are processing the SIP message \return 1 on error, 0 on success \note Successful messages is connected to SIP call and forwarded to handle_request() */ @@ -11924,6 +11927,8 @@ static int sipsock_read(int *id, int fd, short events, void *ignore) /* Process request, with netlock held */ retrylock: ast_mutex_lock(&netlock); + + /* Find the active SIP dialog or create a new one */ p = find_call(&req, &sin, req.method); /* returns p locked */ if (p) { /* Go ahead and lock the owner if it has one -- we may need it */ diff --git a/configs/sip.conf.sample b/configs/sip.conf.sample index 3133feee0a..d391ec7c68 100644 --- a/configs/sip.conf.sample +++ b/configs/sip.conf.sample @@ -56,7 +56,8 @@ srvlookup=yes ; Enable DNS SRV lookups on outbound calls ; Default is yes ;autodomain=yes ; Turn this on to have Asterisk add local host ; name and local IP to domain list. -;pedantic=yes ; Enable slow, pedantic checking for Pingtel +;pedantic=yes ; Enable checking of tags in headers, + ; international character conversions in URIs ; and multiline formatted headers for strict ; SIP compatibility (defaults to "no") -- GitLab