diff --git a/channels/chan_sip.c b/channels/chan_sip.c index d3fd37045d..73b7eeb416 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -9047,7 +9047,8 @@ static struct sip_pvt *find_call(struct sip_request *req, struct ast_sockaddr *a } } - if (!sip_cfg.pedanticsipchecking) { + /* match on callid only for REGISTERs */ + if (!sip_cfg.pedanticsipchecking || req->method == SIP_REGISTER) { struct sip_pvt tmp_dialog = { .callid = callid, };