[SR-Users] [Kamailio-Users] Rewrite $tU

Daniel-Constantin Mierla miconda at gmail.com
Thu Mar 24 14:14:43 CET 2011


Are you calling msg apply changes after record_route()? Try to do 
record_route() after since it tries to discover the outgoing local 
interface which might not be set at that point.

Btw, is Kamailio bridging between two networks?

The output with '-E -ddd' will be helpful anyhow.

Cheers,
Daniel

On 3/24/11 8:25 AM, Spinov Evgeniy wrote:
> On Thu, 2011-03-24 at 07:42 +0100, Daniel-Constantin Mierla wrote:
>> Hello,
>>
>> if you watch the SIP traffic with ngrep, do you see the message sent out?
> First of all I would like to thank you your time devoted to this
> problem.
>
>
> To not flood mail with long text, I've written it in short, without
> fulldumps.
>
> Messages are sent, however, for some reason Record-Route header look
> like this:
>
> Record-Route:<sip:;r2=on;lr=on;ftag=323895591>
> Record-Route:<sip:KAMAILIO_IP;r2=on;lr=on;ftag=323895591>
>
> i.e. first header is empty? I've called this header invalid in the rest
> of the text.
>
> Via header and rest of the packet looks good.
>
> First part of exchange looks like this. Let's assume that I'm calling
> from 100 to 101:
>
> Kamailio<->  Asterisk
>
> INVITE 100 ->  101 ( header is invalid )
> 	<- 100 Trying ( header is invalid )
> 	<- INVITE 101
> 100 Trying ->
> 180 Ringing ( header is invalid )->
>
>
>
> At this stage 101 rings, however 100 is not getting "waiting" tone.
>
> After call reply at 101:
>
> OK 101 		->  100
> 101	<- ACK 100 ( header is invalid )
> OK 101 		->  100
> 100		<- OK 101, header is invalid )
> OK ( from 101 ) ->  100
> 100		<- OK ( from 101, header is invalid )
>
> etc....
> Looks like message is not being delivered correctly.
>
>
>> Can you reproduce this case easily? If yes, can you start kamailio with
>> extra parameters '-E -ddd' and send here all the debug messages printed
>> for such case, from the moment the SIP request is received.
> While on Kamailio side in debug messages I have error regarding failure
> of resolution host IP ";r2=on" from the SIP header.
>
> So it seems, that Record-Router header is doing the mess.
>
> Without msg_apply_changes() invalid Record route header just do not
> appear.
>
> If I've provided you not enough info to find out the reason, I can do
> the full dumps, as problem is easily repeated.
>
> Thank you.
>
>> Cheers,
>> Daniel
>>
>> On 3/24/11 6:48 AM, Spinov Evgeniy wrote:
>>> On Wed, 2011-03-23 at 15:16 +0100, Daniel-Constantin Mierla wrote:
>>>
>>> Well, unfortunately no. When I use msg_apply_changes() and I see this
>>> messages, signalization doesn't work fine. Actually call is not being
>>> established - it's just getting timeouts from K and failure routes are
>>> being executed.
>>>
>>> As function is removed - everything runs good and calls are passing
>>> fine.
>>>
>>>> Hello,
>>>>
>>>> I have to look into the sources and doubel check, but the log messages
>>>> seem to be harmless.
>>>>
>>>> For the moment, you can just set a flag when you change something in the
>>>> message and then call msg_apply_changes() only when the flag is set, e.g.,
>>>>
>>>> remove_hf("From");
>>>> setflag(20);
>>>>
>>>> ...
>>>>
>>>> if(isflagset(20))
>>>>       msg_apply_changes();
>>>>
>>>> However, I will update the sources so such log messages will not appear
>>>> unless they are necessary.
>>>>
>>>> Thanks,
>>>> Daniel
>>>>
>>>>
>>>> On 3/23/11 2:52 PM, Spinov Evgeniy wrote:
>>>>> Hi,
>>>>>
>>>>> I've installed, as you advised Kamailio 3.1.2 and used
>>>>> msg_apply_changes(). However, even when I'm not changing anything in the
>>>>> packet and just calling msg_apply_changes() I get errors from K:
>>>>>
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:859]: FIXME: lumps_len called with
>>>>> null send_sock
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:1340]: FIXME: process_lumps: null
>>>>> bind_address
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>     7(31755) :<core>    [msg_translator.c:519]: ERROR: lump_check_opt: null
>>>>> send socket
>>>>>
>>>>> when function is not used - everything runs fine. However I need to
>>>>> modify the message.
>>>>>
>>>>> Please, advice.
>>>>>
>>>
>>> _______________________________________________
>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>> sr-users at lists.sip-router.org
>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>

-- 
Daniel-Constantin Mierla
http://www.asipto.com




More information about the sr-users mailing list