[SR-Users] PRACK support in RTPENGINE module?

Daniel-Constantin Mierla miconda at gmail.com
Mon May 4 20:09:21 CEST 2020


I pushed a patch to rtpengine module to handle PRACK in both manage()
and answer() functions.

Chris: can you test and see if works as expected? If yes, it will be
backported.

Cheers,
Daniel

On 04.05.20 19:51, Alex Balashov wrote:
> Oh, sorry. I misread; it seemed to me that rtpengine_answer1_f() was
> part of a cascade of fixup functions that goes back to
> rtpengine_manage(), but not to _answer(). You're right of course.
>
> On Mon, May 04, 2020 at 07:49:19PM +0200, Daniel-Constantin Mierla wrote:
>
>> Hello,
>>
>> Chris mentioned that rtpengine_answer() is also not supporting (or is
>> ruling out all request types but ACK), so the C code is limiting in both
>> cases, no matter using rtpengine_manage() or rtpengine_answer().
>>
>> The rtpengine manage() was built as a wrapper around offer()/answer()
>> and it makes the decision of which one is executed in various cases
>> (request/reply/failure route), but not what offer()/answer() functions
>> do internally.
>>
>> So in this case the code has to allow execution for PRACK, it was an
>> omission, likely not a scenario that popped up so far.
>>
>> Cheers,
>> Daniel
>>
>> On 04.05.20 19:22, Alex Balashov wrote:
>>> Hello Chris,
>>>
>>> rtpengine_manage() is just a wrapper that makes context-sensitive
>>> invocations of rtpengine_offer() and rtpengine_answer(), so that you
>>> don't have to choose which of them to call manually. But it's not
>>> perfect. 
>>>
>>> There are nevertheless situations where this manual use of the
>>> offer/answer functions is necessary, and it sounds like this is one of
>>> them.
>>>
>>> There is a larger question of whether rtpengine_manage() should support
>>> PRACK; it seems like the answer is yes. But this lacking cannot be
>>> framed as "RTPEngine doesn't support PRACK" or anything like that.
>>> RTPEngine can support any SDP-bearing request and reply, since RTPEngine
>>> does not care about SIP semantics per se.
>>>
>>> -- Alex
>>>
>>> -- 
>>> Alex Balashov | Principal | Evariste Systems LLC
>>>
>>> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
>>> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>> -- 
>> Daniel-Constantin Mierla -- www.asipto.com
>> www.twitter.com/miconda -- www.linkedin.com/in/miconda
>>
>>
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> -- 
> Alex Balashov | Principal | Evariste Systems LLC
>
> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/

-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda




More information about the sr-users mailing list