Part of patch in #7403 to improve tag checking in pedantic mode (stephen_dredge)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
parent
462407a3a6
commit
139bf2b626
1 changed files with 13 additions and 0 deletions
|
@ -4373,6 +4373,19 @@ static struct sip_pvt *find_call(struct sip_request *req, struct sockaddr_in *si
|
||||||
|
|
||||||
if (option_debug > 4 )
|
if (option_debug > 4 )
|
||||||
ast_log(LOG_DEBUG, "= Looking for Call ID: %s (Checking %s) --From tag %s --To-tag %s \n", callid, req->method==SIP_RESPONSE ? "To" : "From", fromtag, totag);
|
ast_log(LOG_DEBUG, "= Looking for Call ID: %s (Checking %s) --From tag %s --To-tag %s \n", callid, req->method==SIP_RESPONSE ? "To" : "From", fromtag, totag);
|
||||||
|
|
||||||
|
/* All messages must always have From: tag */
|
||||||
|
if (ast_strlen_zero(fromtag)) {
|
||||||
|
if (option_debug > 4 )
|
||||||
|
ast_log(LOG_DEBUG, "%s request has no from tag, dropping callid: %s from: %s\n", sip_methods[req->method].text , callid, from );
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
/* reject requests that must always have a To: tag */
|
||||||
|
if (ast_strlen_zero(totag) && (req->method == SIP_ACK || req->method == SIP_BYE || req->method == SIP_INFO )) {
|
||||||
|
if (option_debug > 4)
|
||||||
|
ast_log(LOG_DEBUG, "%s must have a to tag. dropping callid: %s from: %s\n", sip_methods[req->method].text , callid, from );
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dialoglist_lock();
|
dialoglist_lock();
|
||||||
|
|
Loading…
Reference in a new issue