Richard Fuchs
95b814553b
TT#94201 add ICE=default option
...
Change-Id: If10e0aa284cc7cc5c1e69855733835bd5b52da31
5 years ago
Richard Fuchs
e67eb7b57f
TT#94201 add explicit passthrough flags
...
Change-Id: Ib5015011320490c0bf63b3c8bed9e6caadfa8953
5 years ago
Richard Fuchs
3893069fae
TT#92250 allocate strings for hash table storage
...
closes #1091
Change-Id: Ia3384fc3eb640bb6c728ebde6e7bde09968eeb9a
5 years ago
Richard Fuchs
68ccc52b2b
TT#92250 postpone codec_tracker to final stage
...
Change-Id: I222f705e53fc95f56da40cf927197afcb2ee5107
5 years ago
Richard Fuchs
5ad4a59ea7
TT#97302 add new flag to select DTLS fingerprint algo
...
Change-Id: I48d9bf7184a860ca6f8f488076fe2859db6018f2
5 years ago
Richard Fuchs
92ea2685ae
TT#96200 fix SRTP multi-protocol re-offer
...
Do not perform protocol negotiations in an offer
closes #1086
Change-Id: I5fb7638aa71e80c08abcda2d8c341ae72725bace
5 years ago
Semen Darienko
c741d45cba
fix segfault upon got reINVITE and BYE at the same time
5 years ago
Richard Fuchs
12ac8846de
TT#90101 don't blindly accept a protocol switch in an answer
...
An endpoint switching protocols is normally passed through to the peer,
but in an answer that is usually not desirable. Change the default
behaviour to stick to the original protocol that was offered even if the
answerer changes protocols.
Change-Id: Ib288549f4b1c9ab57a6333c6b7dd511537af96f7
5 years ago
Richard Fuchs
5001a02d44
TT#88750 fix SRTP not working after Redis restart
...
Change-Id: I40a20b2cd2668480d4b85de7a19c39f606b2eada
5 years ago
Richard Fuchs
ec061bba6f
TT#84804 add new DTLS-reverse flag
...
closes #1038
Change-Id: Ic58b3e3c3d1fec75a2c6ea9ddb260141d9a2831f
5 years ago
Richard Fuchs
87521ead34
TT#85701 fix regression from 8e22c9a41
...
Make sure we delete all branched B side monologues when deleting the A
side monologue.
Change-Id: If7214443a9d3e76a05c0b1f526eb2d9091aee822
5 years ago
Richard Fuchs
8e22c9a414
TT#85701 improve branch handling with delete-delay=0
...
Initially created branches don't have a tag associated with them, so
they don't appear in `other_tags`. We need to keep track of which
branches were created from a single from-tag through their via-branch
values so we know when all branches have been deleted.
closes #1037
Change-Id: I4c6ce602b99a9104de98098cd06ca399eb28e1b2
5 years ago
Richard Fuchs
54a39db40f
TT#84804 start DTLS as soon as ICE can communicate
...
closes #1035
Change-Id: I5cce8ab986f7d75d7ad88c53b4cc3b48f99a206a
5 years ago
Richard Fuchs
6b49c88527
don't always reset crypto when DTLS is in use
...
closes #1019
Change-Id: I4fc1b015f70994176118f523e4d38b311ac78acb
5 years ago
Richard Fuchs
e01b3b421c
TT#28300 add cleanup of calls structs
...
Change-Id: I9e95fc9075645a7364bf62a9ca6f193dc6952ce1
5 years ago
Richard Fuchs
a1fb92353a
TT#28300 eliminate free_buf in favour of free_gbuf
...
Change-Id: I128265ff2783c94b897de8ea58b99811fbbe3607
5 years ago
Richard Fuchs
5f3f203fb8
TT#82203 add stats for transcoded sessions
...
Change-Id: Ie9bef31f62d489fccf52b02a8935f9c9dc2575b5
5 years ago
Richard Fuchs
89175c8564
TT#81850 fix SRTP re-offer and RTP to SRTP switch
...
1) In an SRTP re-invite offer, fixes not a full set of crypto suites
being present
2) In a re-invite offer that switches from RTP to SRTP, fixes SRTP not
being initialised at all
Change-Id: I911442d2cba17ecf6af482cfe922d4e9db2eda8d
5 years ago
Richard Fuchs
cca6ba70c7
allow protocol=RTP/AVP plus OSRTP-offer
...
closes #976
Change-Id: Id409d08a5a89b0ca9dbaf8cc457cc8ea89a433f1
5 years ago
Richard Fuchs
a168a3c024
TT#78307 generate RTCP for media players
...
Change-Id: Ic6dd65211ca253491a7ef3acd35499155b60fe4c
5 years ago
Richard Fuchs
92bcedc08a
TT#78307 keep track of RTP stats also when forwarding
...
Change-Id: Iea6214104b7032687608af71f6270a375fed2702
5 years ago
Richard Fuchs
34baba9d22
TT#78307 don't update RTP stats for non-forwarding ports
...
Change-Id: I2dc40d7f9a511588c676fe487a23074e0d8129e2
5 years ago
Richard Fuchs
5fc326c64b
TT#78001 support OSRTP
...
closes #951
Change-Id: I8cd21d60b16e357a57d0d505649b74f38f4ca0b3
5 years ago
Richard Fuchs
cc7a9a5de8
TT#78307 clean up debug/log messages
...
Change-Id: I8e10be7f297480c01a213c89f06ee93a2215767f
5 years ago
Richard Fuchs
1d514a063c
TT#78307 add helper functions for SSRC contexts
...
Change-Id: I32470c03c19c8bb889900ca277b73713ee66c485
5 years ago
Richard Fuchs
d872802ba2
TT#76711 T.38 <> audio gateway
...
Change-Id: I4552e07eee632fa730745410b08c3bf70ab67ab2
5 years ago
Richard Fuchs
6792cde8b6
TT#76711 add custom SDP attributes capability
...
Change-Id: Iaf924938af1ef32a5a7eb961951c0debe7351ee5
5 years ago
Richard Fuchs
641fd160ca
TT#77358 create helper function to determine RTP protocols
...
Change-Id: I6ee4a2c48c896fa9f3f00c9f90c0ae65c1ae3bae
5 years ago
Richard Fuchs
a68a59fbf5
TT#76711 keep track of the raw SDP format string
...
Change-Id: I7f20dbff3237e39cea700c984a4f41016a2264fc
5 years ago
Richard Fuchs
2d78c36338
TT#76711 allow update of media type
...
Change-Id: I3e860fe8683be2d7b0cd3cc70d4f7e4b39a0e147
5 years ago
Richard Fuchs
6513bfd5bd
TT#76711 split out function to handle media protocols
...
Change-Id: I51066ddd4c9d926ec77b9495fb5ca494290bff95
5 years ago
Richard Fuchs
ad4ea21ef4
fix for d09071a
...
Change-Id: I9d24df2b88f5de12ddee73eceaab060f277e2004
5 years ago
Richard Fuchs
d09071a16b
TT#74850 avoid duplicate dlg.terminate_dlg with reversed tags
...
closes #914
Change-Id: Ibb01c4566ceddd83bf3308541420d227ccd655f3
5 years ago
Richard Fuchs
01002b07da
TT#74850 clean up indentation by reversing logic
...
Change-Id: I15140be111ad5e69d4c081f41db0b8ef81bb260b
5 years ago
Richard Fuchs
3d83b46505
TT#76206 fix call teardown for half established dialogues
...
In case of an offer with a via-branch followed by a delete without a
via-branch (cancelled call), the call erroneously remains open after
deleting one half of the call. The reason is that un-answered branches
do not appear in the `other_tags` list and so are left out from being
checked.
Change-Id: Ib008f32ef5ee06a7ca997c900c9a3adc85b0f10d
5 years ago
Balajee SV
220c96aea4
Merge branch 'jb_new' of https://github.com/balajeesv/rtpengine into jb_new
5 years ago
Balajee SV
b45dbbdc24
Merge branch 'jb_new' of https://github.com/balajeesv/rtpengine into jb_new
5 years ago
Balajee SV
e3a5d45433
jb_new
5 years ago
Balajee SV
c0b28c3d65
jb_new
5 years ago
Richard Fuchs
ef0d6a3a80
TT#74301 merge jitter buffer PR #834
...
refactored
closes #834
Change-Id: I174cc6e365af54fb66d2dd78be02c601c5d5d645
5 years ago
Richard Fuchs
c70b3f6369
TT#74651 fix several mem/resource leaks
...
fix cleanup being skipped on redis slaves
fixes an SDES related Redis mem leak
adds a hash for the ports free list to avoid duplicate entries
fixes #898
Change-Id: I34aad67290ff5ef8824142682aac03cb600d0ecb
5 years ago
Richard Fuchs
bc3d4f71b7
compile fix for glib versions < 2.30
...
closes #879
Change-Id: I01e176a1e3479350ba389b35a49f057292f6ad3d
6 years ago
Richard Fuchs
e0dd6747ea
TT#71050 fix branch deletion from via-branch
...
Untagged branches (only known by via-branch) don't appear in the `tags`
hash and don't have any `other_tags`. The logic to determine whether the
call is completely finished therefore must take these into account
separately.
We take care to remove destroyed monologues from the `viabranches` hash
to keep the count up to date, and determine whether a call is terminated
when there is no more than 1 tagged monologue left and no untagged
monologues.
Closes #875
Change-Id: I6b9618d598f4a95970cd2a452f06574423932b09
6 years ago
Richard Fuchs
ab77ed50af
TT#64601 refuse overriding crypto params from SDES when DTLS is in use
...
Change-Id: I10f2fe3fdd0955fa39b5edcb31196042cdb0b731
6 years ago
Richard Fuchs
7b60ca8e35
ignore untagged/wildcard/unknown MLs in delete with via-branch
...
fixes #840
Change-Id: Ifddf6c4c5ae58556dc9a746f657c7aebc4beee67
6 years ago
Richard Fuchs
22ea251157
don't skip address family selection when zero port is present
...
closes #837
Change-Id: Ife85f3a383981ccf3efcc95cb71c82d6e89117d9
6 years ago
Richard Fuchs
3466700149
TT#65800 fix SDES negotiation bug
...
If B accepts a crypto suite that was not listed as the first, in order
to support SRTP passthrough, we correctly answer to A with only that one
crypto suite. But we must also remove all other crypto suites from our
list of supported crypto suites internally, because we use the first one
to init our crypto contexts.
fixes #829
Change-Id: Id07343d7b24648208e3a4b4e0b246949dce0385e
6 years ago
Richard Fuchs
3fb5befad4
TT#64301 log xmlrpc children to stderr
...
Change-Id: I103c062bc797c609983a995d835a84a00267aa86
6 years ago
Richard Fuchs
23977237c0
TT#61050 detect to-tag changes via via-branch
...
Change-Id: I1cf0f7e516ae52a2f40a9ef84a207fe1456ea1e5
6 years ago
Richard Fuchs
988d077b5c
TT#60301 fix rtcp-mux logic with branched calls
...
Move the RTCP_MUX_OVERRIDE flag to the opposite side of the dialogue to
preserve options given during a branched call.
closes #793
Change-Id: I0bd7621ba22fbfe4f41d115ec2e5dab65283ae01
6 years ago
Richard Fuchs
910c03fa62
TT#58660 PCM to RFC DTMF transcoding
...
Change-Id: Iea6a11c0caad1f5e7dcca966101e2969d3516b6f
6 years ago
Richard Fuchs
db507468de
TT#59100 support case insensitive codec names
...
closes #775
Change-Id: Id54309bf0920e731ad42fb09b078580090f6f82e
6 years ago
Richard Fuchs
2298de76b1
honour a=rtcp-fb in SDP even if transport is advertised as RTP/(S)AVP
...
closes #467
Change-Id: Ib8ea1d6c7b4c9277279399c4319c5efef6834372
6 years ago
Richard Fuchs
573cd3ff22
TT#58050 fix refcount bug
...
Every packet_stream gets a send_timer allocated, but the teardown
routine skips the refcount decrease for fallback RTCP streams (when
rtcp-mux is in use), resulting in mem leak
fixes #753
Change-Id: Ib3a4ef8a81135918f08e28e127e4bb557b8ea05d
6 years ago
Richard Fuchs
26b725d024
TT#45617 add new options to support log markers for sensitive data
...
Change-Id: I2ffa4da4be3a05f043e7991612bbb37d8102d91a
6 years ago
Richard Fuchs
357474df6f
TT#50652 add label= option to match call participants
...
Change-Id: Ifc6cf8f630e9e5eb8cfb9b284e671a5ce4470963
6 years ago
Richard Fuchs
fb76ef74f8
TT#54800 fix ptime overrides
...
Adds a new option ptime-reverse to complement setting of ptime towards
the offerer. This and ptime setting are now ignored in answers.
Change-Id: Icbc04f191cbc194b75b72a97832fcaba58feb10e
6 years ago
Richard Fuchs
40dc49f8e2
TT#50652 stop media playback on call delete
...
Change-Id: I008c6403ad8f3529806d5649bee0928fb50e9754
6 years ago
Richard Fuchs
d449861d96
TT#50652 separate out and move crypt handler routines
...
Change-Id: Ia30aa8912f02ca2ea427b3c659a4b8696dc4a2a0
6 years ago
Richard Fuchs
3bdad88063
TT#50652 create timer to gradually send packets without jitter
...
Change-Id: I5b28f7514f54c6df9f3ee607e3bca76274b431b3
6 years ago
Richard Fuchs
83965bdb1f
TT#50652 infrastructure to support reading/playing of media files
...
Change-Id: I8212f5c74bcb9557d41f80ef3a1595f53bafde8a
6 years ago
Richard Fuchs
4266f8e542
move SDES-no handling into __sdes_accept
...
This fixes SDES-no being honoured also for SRTP>RTP transcoding cases
additional fix for #661
Change-Id: I229f89c8b3c6a8e485190d67162e95eee387e307
6 years ago
Richard Fuchs
0c559f5860
Add missing SDES accept routine
...
When we receive an incoming SDES parameter, we must match them against the
previously sent outgoing SDES parameters, choose the one that matches
what we just received and eliminate all others. This is a no-op if none
were sent previously (original offer).
Issue only appears in a re-invite when the first offered crypto suite is
accepted.
fixes #631
Change-Id: I4991d0aaf0b29c1ba66045ed0e5281fc18c8af2e
7 years ago
Richard Fuchs
b593d57e21
TT#37400 do not answer with ICE attributes if no ICE was offered
...
fixes #561
Change-Id: Ia660f19109404f8edc1dd5c143e797a82d25276d
7 years ago
Richard Fuchs
0e129eda08
TT#49600 fix offered crypto suite not being dropped via SDES-no
...
fixes #678
Change-Id: I80ca6c268b7397e7901017a4a7000dd2b2b66bd6
7 years ago
Richard Fuchs
c80f55b85a
TT#49600 add debug log output for SDES negotiations
...
Change-Id: Ifb49d202bfa691cba63f86192e5730f1446ba1b9
7 years ago
Richard Fuchs
881e0dc2dc
TT#48800 add option to disable individual SDES crypto suites
...
closes #661
Change-Id: I3556977246d6e15bf134755e1d699e9165735886
7 years ago
Richard Fuchs
3dc7d1b3ed
TT#45472 support updating media ID strings
...
Change-Id: I8c8f42419d81fb3e08ecbbf09999d2be4f2ac93f
7 years ago
Richard Fuchs
77e2862a02
TT#45472 suppress media updates for SDP fragments
...
Change-Id: Iceae3fb44f77448311767d649d2f22e1153f27e9
7 years ago
Richard Fuchs
c546b6b89f
TT#45472 check a=mid values in answers and warn on mismatches
...
Change-Id: I49b359db40b984abb8a46407145d5adeb7e19cfa
7 years ago
Richard Fuchs
e1fbe25b89
TT#45472 keep track of media IDs in a hash table
...
Change-Id: I66d2a5aff29447a60f4f3961165bfb6c0392a38e
7 years ago
Richard Fuchs
a1efdf6b20
TT#45472 support generating a=mid lines if not present
...
closes #641
Change-Id: I849f0c73c5fdd575417a37a41d6701ea4454374b
7 years ago
Richard Fuchs
3c50130c7b
TT#45472 process and retain media ID strings (a=mid)
...
Change-Id: Icf7219f407ed660c009ffde838c942e13aad40ce
7 years ago
Richard Fuchs
13c21b1400
fix segfault when using legacy control protocol
...
fixes #652
Change-Id: Id60351e41411ae5a309bf7b1da98b1ec34c37d66
7 years ago
Richard Fuchs
04a83027a0
TT#43557 implement media blocking
...
Change-Id: I336cf7203c1236b3e596310690a89ce1c3fd8bf4
7 years ago
Richard Fuchs
89084da8d8
TT#43855 support XMLRPC callback to Kamailio
...
Change-Id: I35f9abb5e98ff17f4fed28ca0e045e7d5d734b1d
7 years ago
Richard Fuchs
b82cf56ec0
clean up code artefacts from cab9d895
...
Change-Id: I8aa475ee5338d5a0bdc57c082991624f8af809e2
7 years ago
Richard Fuchs
cab9d895b2
TT#42500 fix only one crypto suite being offered.
...
We should offer all crypto suites that we support. If passing through
SDES, we should amend the list of crypto suites with all additional ones
that we support that weren't included in the received offer.
closes #577
Change-Id: I9b6c16e8eadecf01cdbc8043bd8361e0f683e456
7 years ago
Richard Fuchs
f1b81b649e
simplify parameters passed to codec_rtp_payload_types()
...
Change-Id: I8a9147bb527b3084ed9f4acfa82868fc26b0d8c2
7 years ago
Richard Fuchs
2f5d792aae
TT#36301 add `always-transcode` flag
...
closes #527
Change-Id: I0d8192cf93c49823f35a6307ccd8c77842fb51dd
7 years ago
Richard Fuchs
fa5c265045
TT#36302 support scheduling settings
...
Change-Id: I490fde10a5ae44d25b95e4368af70003716040b7
7 years ago
Richard Fuchs
6da7494a08
TT#36180 calculate per-second stats based on timer runtime
...
Change-Id: I6b3665b2219becb0fb25f4849b11745f809ab8c7
7 years ago
Richard Fuchs
9943a3d868
TT#36180 scale timer interval according to runtimes
...
Also slow down XMLRPC callbacks to avoid excessive CPU usage
Change-Id: Ie318997bacfacc6d9806d72ff42310cfd19f49b2
7 years ago
Richard Fuchs
3b3e964c83
short lock duration for faster calls iteration in the timer
...
Change-Id: I1d2d40e1a5fcdaaf8384eeb841d3e99690185d7f
7 years ago
Richard Fuchs
539e063992
don't retry XMLRPC callback if endpoint says the ID was not found
...
Change-Id: I943f8738e1c92345fc983a3a8ab7d61d00b924ad
7 years ago
Richard Fuchs
b4f65bdd96
TT#35634 add `xmlrpc-address` option for callback address
...
Change-Id: I9c040fc00242469dadbfef485f33e41e698164d1
7 years ago
Richard Fuchs
e0cdf74ac5
fix SRTP ROC syncing between kernel and userspace
...
also fixes spurious unkernelized rtcp-mux streams
fixes #495
Change-Id: I9ec86ec5ecfffeede367a9aab9168ac32b7a95f3
7 years ago
Richard Fuchs
6fa712d0d8
implement offer-timeout option
...
closes #526
Change-Id: I819e1ad567c93f922461caf15482c2c55a0143d1
7 years ago
Richard Fuchs
16024d2e7a
create explicit per-stream DTLS context for ICE
...
fixes #500
Change-Id: Iee3d9ab1c19a6992ae043896eb500b3961de3edc
7 years ago
Richard Fuchs
14100b0b8a
use reference counting on SSRC objects
...
possibly fixes #488 and #482
Change-Id: Ib68e456b9322836b153c9fd0e59c3556378557ae
7 years ago
Richard Fuchs
5b0bb90afa
fix recording setup_media reversed direction
...
fixes #462
Change-Id: Id8efec9261ce9edb246f7a838619a93157e049b3
7 years ago
Richard Fuchs
14262f56fa
fix segfault regression from e84fd86
...
closes #470
Change-Id: I3ce83e4fdc5fe8113932bb51ec3375c6144814ae
7 years ago
Richard Fuchs
e84fd8612b
fix incorrect DTLS context being used with ICE
...
fixes #451
Change-Id: I4db956bd9e8234862a7dd3ee492a6ed2778150d3
7 years ago
Richard Fuchs
bc30929192
TT#32210 add codec masking option
...
Change-Id: I05f2bde978f628d398dd8046815fcfc3d5b42de2
7 years ago
Richard Fuchs
9147d5e438
TT#32983 support transcoding options in redis (re)store
...
Change-Id: I8552743a5ec48b6d4464e8a2c4acd1c9bf11f02a
7 years ago
Richard Fuchs
a4a0e34ded
TT#31408 distinguish between codec types
...
Change-Id: I8c7331908fe4a105d9f9139a5f9867b6ae43a646
7 years ago
Richard Fuchs
266a1fbc8b
TT#31404 support custom ptime and repacketization for sampled codecs
...
Change-Id: I4db83cb8faa9b0234dd655f4bdc116a3ddb59f39
7 years ago
Richard Fuchs
ad4a5d10ef
TT#31198 add resampling support
...
Change-Id: Ib691e62d9ff6fc5663cea275663efc9134d78188
7 years ago
Richard Fuchs
a4e73c90e8
TT#30404 accept and reject codecs according to transcoding preference
...
Change-Id: I7e4d1d834289433ae4a42d78b92cbc745884d5d1
7 years ago
Richard Fuchs
b9206a49bc
TT#28163 abstractize SSRC hash
...
Change-Id: I2f28854070ad5a7567870ef7585e67729154b0e3
7 years ago