OpenSIPS / opensips

OpenSIPS is a GPL implementation of a multi-functionality SIP Server that targets to deliver a high-level technical solution (performance, security and quality) to be used in professional SIP server platforms.
https://opensips.org
Other
1.26k stars 576 forks source link

SIP Trace does now show modified callid after topology_hiding #459

Open digipigeon opened 9 years ago

digipigeon commented 9 years ago

In 2.1 using topology_hiding module and sip_trace the callid is re-written correctly, however this is not shown with data gathered by the SIP trace module.

vladpaiu commented 9 years ago

Hello,

Indeed, currently SIP trace will log the caller side callid for both incoming and outgoing SIP messages.

Now, this can be an advantage, since it will make putting traces together and plotting them alot easier when compared to having two different call-ids and having to fetch all the SIP messages for those two callids.

Why do you need the callid from the callee end in the actual sip trace ? Having that in the CDRs is possible by using the $TH_callee_callid pvar.

Best Regards, Vlad

digipigeon commented 9 years ago

There is no advantage of the SIP Trace showing something different than what is actually happening.

I need the SIP Trace to accurately reflect the packets on the wire, I don't really think this needs more of an explanation.

digipigeon commented 7 years ago

Just checked and this is resolved now with 2.2

digipigeon commented 7 years ago

My apologies I prematurely closed this ticket. It turns out that 2.2 still shows the original callid rather than the one after topology hiding takes place.

digipigeon commented 6 years ago

Hi, is it possible to get an update on this issue please?

danielrycaj commented 3 years ago

It is not resolved in 3.1

jpyle490 commented 1 year ago

It does not appear to be resolved in 3.2, either.

bogdan-iancu commented 1 year ago

woow, an +8 years ongoing ticket :face_with_head_bandage:

bogdan-iancu commented 1 year ago

Could anyone summarize here which messages are not properly traced ? reply/request , in/out ...... ??

jpyle490 commented 1 year ago

In my case, all messages are traced, but those leaving OpenSIPS have the wrong SIP Call-ID (different than what's in the message). They have the original Call-ID as received, not the new Call-ID as created by topology_hiding("C").

vtzan commented 1 year ago

In my case, all messages are traced, but those leaving OpenSIPS have the wrong SIP Call-ID (different than what's in the message). They have the original Call-ID as received, not the new Call-ID as created by topology_hiding("C").

Which version do you use on that scenario?

jpyle490 commented 1 year ago

In my case, all messages are traced, but those leaving OpenSIPS have the wrong SIP Call-ID (different than what's in the message). They have the original Call-ID as received, not the new Call-ID as created by topology_hiding("C").

Which version do you use on that scenario?

3.2.12 (x86_64/linux)

bogdan-iancu commented 1 year ago

I did some tests and code digging in order to understand the problem here. The affected sip messages (requests and replies) are the received/inbound ones, requiring an update of the call-id. The outbound messages are properly traces. Now, what happens with the inbound ones - the TH works on a very very low level, using some pre-script raw callbacks that gives access to the msg buffer before being converted into a sip_msg structure. The TH module is doing that to be sure it is restoring the callid before doing anything else. While the tracer module uses SIP level callbacks, based on sipmsg, transactions and dialogs....so it is tracing after the TH is doing its callid restoring. Next step - see if there is any solution here....