diff --git a/libsofia-sip-ua/nta/nta.c b/libsofia-sip-ua/nta/nta.c index b1c53a6e..4a791f19 100644 --- a/libsofia-sip-ua/nta/nta.c +++ b/libsofia-sip-ua/nta/nta.c @@ -6535,14 +6535,8 @@ static int nta_incoming_response_headers(nta_incoming_t *irq, clone = 1, sip->sip_call_id = sip_call_id_copy(home, irq->irq_call_id); if (!sip->sip_cseq) clone = 1, sip->sip_cseq = sip_cseq_copy(home, irq->irq_cseq); - if (!sip->sip_via) { - clone = 1; - /* 100 responses are not forwarded by proxies, so only include the topmost Via header */ - if (sip->sip_status && sip->sip_status->st_status == 100) - sip->sip_via = (sip_via_t *)msg_header_copy_one(home, (msg_header_t const *)irq->irq_via); - else - sip->sip_via = sip_via_copy(home, irq->irq_via); - } + if (!sip->sip_via) + clone = 1, sip->sip_via = sip_via_copy(home, irq->irq_via); if (clone) msg_set_parent(msg, (msg_t *)irq->irq_home);