diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 4210322c6a..bec53b776d 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -23250,15 +23250,6 @@ static void handle_response_invite(struct sip_pvt *p, int resp, const char *rest ast_set_flag(&p->flags[0], SIP_PENDINGBYE); } ast_rtp_instance_activate(p->rtp); - } else if (!reinvite) { - struct ast_sockaddr remote_address = {{0,}}; - - ast_rtp_instance_get_remote_address(p->rtp, &remote_address); - if (ast_sockaddr_isnull(&remote_address) || (!ast_strlen_zero(p->theirprovtag) && strcmp(p->theirtag, p->theirprovtag))) { - ast_log(LOG_WARNING, "Received response: \"200 OK\" from '%s' without SDP\n", p->relatedpeer->name); - ast_set_flag(&p->flags[0], SIP_PENDINGBYE); - ast_rtp_instance_activate(p->rtp); - } } if (!req->ignore && p->owner) { @@ -24209,11 +24200,7 @@ static void handle_response(struct sip_pvt *p, int resp, const char *rest, struc gettag(req, "To", tag, sizeof(tag)); ast_string_field_set(p, theirtag, tag); - } else { - /* Store theirtag to track for changes when 200 responses to invites are received without SDP */ - ast_string_field_set(p, theirprovtag, p->theirtag); } - /* This needs to be configurable on a channel/peer level, not mandatory for all communication. Sadly enough, NAT implementations are not so stable so we can always rely on these headers. diff --git a/channels/sip/include/sip.h b/channels/sip/include/sip.h index 342c87b364..c0704ec79f 100644 --- a/channels/sip/include/sip.h +++ b/channels/sip/include/sip.h @@ -1019,7 +1019,6 @@ struct sip_pvt { AST_STRING_FIELD(rdnis); /*!< Referring DNIS */ AST_STRING_FIELD(redircause); /*!< Referring cause */ AST_STRING_FIELD(theirtag); /*!< Their tag */ - AST_STRING_FIELD(theirprovtag); /*!< Provisional their tag, used when evaluating responses to invites */ AST_STRING_FIELD(tag); /*!< Our tag for this session */ AST_STRING_FIELD(username); /*!< [user] name */ AST_STRING_FIELD(peername); /*!< [peer] name, not set if [user] */