Fixing the attack shield so it doesn't produce attacks... Issue 8265 - never reply to an ACK

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47250 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Olle Johansson
2006-11-07 13:13:51 +00:00
parent 798bb964d1
commit eac4efcf22

View File

@@ -4310,8 +4310,10 @@ static struct sip_pvt *find_call(struct sip_request *req, struct sockaddr_in *si
} else if( sip_methods[intended_method].can_create == CAN_CREATE_DIALOG_UNSUPPORTED_METHOD) {
/* A method we do not support, let's take it on the volley */
transmit_response_using_temp(callid, sin, 1, intended_method, req, "501 Method Not Implemented");
} else if (intended_method != SIP_RESPONSE) {
/* This is a request outside of a dialog that we don't know about */
} else if (intended_method != SIP_RESPONSE && intended_method != SIP_ACK) {
/* This is a request outside of a dialog that we don't know about
...never reply to an ACK!
*/
transmit_response_using_temp(callid, sin, 1, intended_method, req, "481 Call leg/transaction does not exist");
}
/* We do not respond to responses for dialogs that we don't know about, we just drop