For newly created call profiles use the move operation
instead of copy one.
Fixes:
CID 542292:Variable copied when it could be moved (COPY_INSTEAD_OF_MOVE)
Change-Id: Ia130fc3e32d23e63f3d41fc6261e90ecf742ecf7
Fix for the:
SBC.cpp:238:11: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
238 | ERROR("registering "MOD_NAME" application\n");
| ^
SBC.cpp:243:11: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
243 | ERROR("registering "MOD_NAME" DI interface\n");
| ^
Change-Id: I0199671c027f61f617afc497f2e22cf09e75f78f
Replaces header is fixed in either Replaces of INVITE or of REFER
messages. New sbc profile options:
fix_replaces_inv=[yes|no]
fix_replaces_ref=[yes|no]
Notes:
- All of those profile options must be set
uas_auth_bleg_realm
uas_auth_bleg_user
uas_auth_bleg_pwd
- On realm mismatch, it is not authenticated
- URI is not checked against the Authorization URI
Conflicts:
apps/sbc/SBC.cpp
apps/sbc/SBC.h
apps/sbc/SBCCallProfile.cpp
apps/sbc/SBCCallProfile.h
apps/sbc/etc/transparent.sbcprofile.conf
missing payload descriptions (a line in SDP) valid for known payloads
with pt < 69 would lead the SDP filter which matches on the codec name
to fail.
sdp_filter=transparent/blacklist/whitelist enables normalization of SDP
if sdp_filter is not set, no normalization is done.
first version, wip.
todo:
- variable number of streams (now fixed to 3 - consumes many ports)
- symmetric RTP
- multi interfaces
- optimization: parse SDP only once, pass AmSdp object with request event
- regex maps are files with regex=>value entries which,
once loaded, can be used with $M(key=>mapname) pattern replacement
- it is now possible to use replacements in active_profile, and
also a list of profiles can be specified here - the first matching
will be used
if refuse_with is set, all calls in this profile are refused with
the specified response code and reason. pattern replacement is
enabled on both code and reason. append_headers option, too.
app level timers can now be used easily with the AmSession functions:
setTimer(int id, unsigned timeout)
removeTimer(int id)
removeTimers()
timersSupported()
- add reliable_1xx REL100_IGNORED, where all rel100 stuff is ignored
- set B2B sessions as reliable_1xx=REL100_IGNORED
- translate RAck Cseq
- for this: adds rack_method and rack_cseq to sip request (should possibly be reworked to use some dynamic field)
- relay Rseq (if exist)