Always use to-tag for NG message with rtpp-flags,
if presented. This change is caused by the processing
logic being moved to rtpengine with rtpp-flags.
Change-Id: Ib656fdccbd366053bab37ef04c48659a6fd3acc1
(cherry picked from commit e527845822)
(cherry picked from commit dccf1e3ca1)
We are seeing a lot of error messages like:
> ERROR: pua [pua_db.c:895]: get_record_puadb(): Too many rows found (2)
After some investigation I come up with a couple of fixes:
* pua: improve the query to support caller|callee with same pres_id (same dialog)
* pua_dialoginfo: support uuid to generate pres_id to improve randomness
Change-Id: I43d5c58fe20c776b03af217f644443d800c9453e
If the module uses an SDP taken from a pvar, and the current message
uses a multipart content, don't replace the entire message body with the
rewritten SDP, but only the part of the body that is SDP.
Change-Id: I9e43a7c2179c4887f16213c1a2fa2d2bf76b7764
Introduce new function: `allow_register_include_port()`
to be able to check the whole Contact header including port.
Example, register.deny content is:
ALL : "^sip:.*127.0.0.1:5062"
If the Contact is: "Contact: <sip:testuser1004@127.0.0.1:5062>"
then this will check the Contact hf including port of it.
Otherwise if usual `allow_register()` function is used,
then only the "testuser1004@127.0.0.1" will be taken into
account, which will lead the regex to be failing.
The func `allow_register_include_port()` works similarly
as `allow_register()` except it checks Contact's port.
Change-Id: I47820627e8ef91a09d7564d0848d5c356b3017d9
Introduce a versatile behavior of the rtpengine module
in terms of ability to parse flags on the daemon side,
instead of module. Previous behavior is also kept.
General points:
- rtpengine daemon supports rtpp flags processing from now on
- module still provides in the bencode (when calling daemon):
call-id, to/from tags, viabranch (so identification call data)
- even though the module's interface is updated,
a backwards compatibility is given, so no obligatory changes
from kamailio script users required
- each rtpengine module's function which takes rtpp flags
as a parameter, now is able to get a third parameter `viabranch`,
which is used to detect, which approach to use (older/newer):
- without the viabranch - older one used
- with the viabrnach - new one used, so rtpp flags parsing on
the daemoin side
The goal is to deprecate processing of option flags on the module
side and only parse them on the daemon side.
This brings a list of benifits, such as:
- no need to keep in sync daemon and module (for specific flags)
- support of different rtpp flag string formats (raw), so that,
for example, kamailio script users can use plain text or
bencode dictionary like format
Change-Id: I2e7874a6e425d0f25556a45645fa9417cc9f459d