diff --git a/daemon/call_interfaces.c b/daemon/call_interfaces.c index f1a89a6fd..f70eccc73 100644 --- a/daemon/call_interfaces.c +++ b/daemon/call_interfaces.c @@ -857,8 +857,9 @@ static void call_ng_flags_replace(sdp_ng_flags *out, str *s, helper_arg arg) { case CSH_LOOKUP("SDP-version"): out->replace_sdp_version = 1; break; + /* TODO: after a while remove silent support for this flag */ case CSH_LOOKUP("session-connection"): - out->replace_sess_conn = 1; + ilog(LOG_INFO, "replace-session-connection flag encountered, but not supported anymore."); break; case CSH_LOOKUP("session-name"): out->replace_sess_name = 1; diff --git a/daemon/sdp.c b/daemon/sdp.c index e7330c558..2214dafe4 100644 --- a/daemon/sdp.c +++ b/daemon/sdp.c @@ -3236,15 +3236,11 @@ int sdp_replace(struct sdp_chopper *chop, sdp_sessions_q *sessions, struct call_ } sess_conn = 0; - if (flags->replace_sess_conn) - sess_conn = 1; - else { - for (__auto_type k = session->media_streams.head; k; k = k->next) { - sdp_media = k->data; - if (!sdp_media->connection.parsed) { - sess_conn = 1; - break; - } + for (__auto_type k = session->media_streams.head; k; k = k->next) { + sdp_media = k->data; + if (!sdp_media->connection.parsed) { + sess_conn = 1; + break; } } diff --git a/include/call_interfaces.h b/include/call_interfaces.h index 7a9d679ca..df6105e5d 100644 --- a/include/call_interfaces.h +++ b/include/call_interfaces.h @@ -146,7 +146,6 @@ struct sdp_ng_flags { port_latching:1, no_port_latching:1, replace_origin:1, - replace_sess_conn:1, replace_sdp_version:1, force_inc_sdp_ver:1, replace_username:1, diff --git a/t/auto-daemon-tests-rtpp-flags.pl b/t/auto-daemon-tests-rtpp-flags.pl index 3be3f60a2..694f5907f 100644 --- a/t/auto-daemon-tests-rtpp-flags.pl +++ b/t/auto-daemon-tests-rtpp-flags.pl @@ -15,7 +15,7 @@ autotest_start(qw(--config-file=none -t -1 -i 203.0.113.1 -i 2001:db8:4321::1 new_call; -offer('rtpp-flags: basic A to B call', { 'rtpp-flags' => 'replace-origin replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin replace-session-connection strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'ICE=remove replace-origin replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'ICE=remove replace-origin strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin replace-session-connection strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-zero-address replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-zero-address strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-zero-address replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-zero-address strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'codec-accept=PCMU replace-origin replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'codec-accept=PCMU replace-origin strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin replace-session-connection strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'replace-origin strict-source label=callee OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'rtcp-mux-demux replace-origin replace-session-connection strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'rtcp-mux-demux replace-origin strict-source label=caller OSRTP-accept address-family=IP4 transport-protocol=RTP/AVP' }, < 'SDES-only-AES_CM_128_HMAC_SHA1_80 ICE=remove DTLS=off replace-origin replace-session-connection strict-source label=caller address-family=IP4 transport-protocol=RTP/SAVP' }, < 'SDES-only-AES_CM_128_HMAC_SHA1_80 ICE=remove DTLS=off replace-origin strict-source label=caller address-family=IP4 transport-protocol=RTP/SAVP' }, < 'ICE=remove replace-origin replace-session-connection strict-source label=callee address-family=IP4 transport-protocol=RTP/SAVP' }, < 'ICE=remove replace-origin strict-source label=callee address-family=IP4 transport-protocol=RTP/SAVP' }, < 'T.38-decode ICE=remove DTLS=off replace-origin replace-session-connection strict-source label=caller address-family=IP4 transport-protocol=RTP/AVP' }, < 'T.38-decode ICE=remove DTLS=off replace-origin strict-source label=caller address-family=IP4 transport-protocol=RTP/AVP' }, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/SAVPF', + replace => ['origin'], 'transport-protocol' => 'RTP/SAVPF', 'rtcp-mux' => ['require']}, < 'remove', flags => [qw(port-latching always-transcode SDES-off no-rtcp-attribute strip-extmap)], - 'transport-protocol' => 'RTP/AVP', replace => ['origin', 'session-connection'], + 'transport-protocol' => 'RTP/AVP', replace => ['origin'], 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/SAVPF', + replace => ['origin'], 'transport-protocol' => 'RTP/SAVPF', 'rtcp-mux' => ['require']}, < 'remove', flags => [qw(port-latching always-transcode SDES-off no-rtcp-attribute strip-extmap)], - 'transport-protocol' => 'RTP/AVP', replace => ['origin', 'session-connection'], + 'transport-protocol' => 'RTP/AVP', replace => ['origin'], 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/SAVPF', + replace => ['origin'], 'transport-protocol' => 'RTP/SAVPF', 'rtcp-mux' => ['require']}, < 'remove', flags => [qw(port-latching always-transcode SDES-off no-rtcp-attribute strip-extmap)], - 'transport-protocol' => 'RTP/AVP', replace => ['origin', 'session-connection'], + 'transport-protocol' => 'RTP/AVP', replace => ['origin'], 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/SAVPF', + replace => ['origin'], 'transport-protocol' => 'RTP/SAVPF', 'rtcp-mux' => ['require']}, < 'remove', flags => [qw(port-latching SDES-off no-rtcp-attribute strip-extmap)], - 'transport-protocol' => 'RTP/AVP', replace => ['origin', 'session-connection'], + 'transport-protocol' => 'RTP/AVP', replace => ['origin'], 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < ['origin', 'session-connection'], 'transport-protocol' => 'RTP/AVP', + replace => ['origin'], 'transport-protocol' => 'RTP/AVP', 'rtcp-mux' => ['demux']}, < "RTP/SAVP", "ICE" => "remove", "rtcp-mux" => [ "demux" ], DTLS => 'off', - "replace" => [ "origin", "session-connection" ], + "replace" => [ "origin" ], "via-branch" => "z9hG4bK0ae8.cc3c994fa8d0c0f1f2536bba541306fb.0", }, < "remove", "rtcp-mux" => [ "demux" ], DTLS => 'off', - "replace" => [ "origin", "session-connection" ], + "replace" => [ "origin" ], "via-branch" => "z9hG4bK0ae8.cc3c994fa8d0c0f1f2536bba541306fb.0", }, < "RTP/SAVP", "ICE" => "remove", "rtcp-mux" => [ "demux" ], DTLS => 'off', - "replace" => [ "origin", "session-connection" ], + "replace" => [ "origin" ], "via-branch" => "z9hG4bK0ae8.cc3c994fa8d0c0f1f2536bba541306fb.0", 'to-tag' => tt(), }, < "remove", "rtcp-mux" => [ "demux" ], DTLS => 'off', - "replace" => [ "origin", "session-connection" ], + "replace" => [ "origin" ], "via-branch" => "z9hG4bK0ae8.cc3c994fa8d0c0f1f2536bba541306fb.0", }, < "RTP/SAVP", "ICE" => "remove", "rtcp-mux" => [ "demux" ], DTLS => 'off', - "replace" => [ "origin", "session-connection" ], + "replace" => [ "origin" ], "via-branch" => "z9hG4bK0ae8.cc3c994fa8d0c0f1f2536bba541306fb.0", 'to-tag' => tt(), }, < 'remove', replace => [qw(origin session-connection)], +offer('gh 664 codec masking plain', { ICE => 'remove', replace => [qw(origin)], flags => [qw(codec-mask-opus codec-mask-G722 codec-strip-G7221)] }, < 'remove', replace => [qw(origin session-connection)] }, < 'remove', replace => [qw(origin)] }, < 'remove', replace => [qw(origin session-connection)], +offer('gh 664 codec masking a/t', { ICE => 'remove', replace => [qw(origin)], flags => [qw(codec-mask-opus codec-mask-G722 codec-strip-G7221 always-transcode)] }, < 'remove', replace => [qw(origin session-connection)] }, < 'remove', replace => [qw(origin)] }, < 'remove', replace => ['origin', 'session-connection'], + ICE => 'remove', replace => ['origin'], flags => [ "loop-protect", "asymmetric" ] }, < 'remove', replace => ['origin', 'session-connection'], + { ICE => 'remove', replace => ['origin'], flags => [ "loop-protect", "asymmetric" ] }, < tt(), - ICE => 'remove', replace => ['origin', 'session-connection'], + ICE => 'remove', replace => ['origin'], flags => [ "loop-protect", "asymmetric" ] }, < 'remove', replace => ['origin', 'session-connection'], + ICE => 'remove', replace => ['origin'], flags => [ "loop-protect", "asymmetric" ] }, < 'remove', replace => ['origin', 'session-connection'], + { ICE => 'remove', replace => ['origin'], flags => ['strict-source'], ptime => 20, 'ptime-reverse' => 60, 'rtcp-mux' => ['demux'], }, < ['SDP version', 'origin', 'session-connection', 'username', 'session-name'] }, < ['SDP version', 'origin', 'username', 'session-name'] }, < ['SDP version', 'origin', 'session-connection', 'username', 'session-name'] }, < ['SDP version', 'origin', 'username', 'session-name'] }, < ['SDP version', 'origin', 'session-connection', 'username', 'session-name'] }, < ['SDP version', 'origin', 'username', 'session-name'] }, <