Richard Fuchs
28d883ea8d
MT#55283 allow null media_id
...
Change-Id: I2715fcf1a05c430c7eeea5c4c8f8ad7c1bc69ed0
(cherry picked from commit ba8c0fa87f )
(cherry picked from commit 96e596398b )
6 months ago
Richard Fuchs
6e2630cfc1
MT#55283 fix handing of sub-ans with extra media
...
Closes #2066
Change-Id: I35761075c28be3ddf1476d46b3bb8621ae899b40
(cherry picked from commit e015250b96 )
6 months ago
Richard Fuchs
3c07afd269
MT#55283 ignore erroneous use of to-tag
...
The Kamailio control module unconditionally adds the current to-tag to
the control message if rtpp-flags parsing is active. This is generally
not desirable in the case of an initial subscribe-request, as we want a
generated to-tag when the existing to-tag belongs to another dialogue.
Special-case this to ignore the included to-tag if none has been given
explicitly.
Change-Id: I1dc28bfdfd086766e0b6a117c74edd0ebb75d526
6 months ago
Richard Fuchs
d6cf41dfc8
MT#55283 track explicit to-tag in rtpp-flags
...
Change-Id: If6856dfa7bc62f5cd6668242fc2726369c0ac465
6 months ago
Richard Fuchs
54c0dc9f31
MT#55283 allow alternative spellings for to-tag
...
Change-Id: I3f66c6f699f279099a60f3ad3c4d76a01d0ed4ec
6 months ago
Richard Fuchs
fe06c5c1ef
MT#55283 track usage of rtpp-flags parsing
...
Change-Id: I1db41e06e3765d4af382b42f976118f88962f503
6 months ago
Richard Fuchs
d3ef4edfcf
MT#55283 allow RTCP APP for peer verification
...
Closes #2057
Change-Id: I069d12d8c7fd7ec36b77f1394fd9e8b928cdfd46
6 months ago
fergusean
256ad7b588
MT#55283 Fix "maximum" typo
...
Closes #2062
Change-Id: Ibef2fe4876cef777e23aaff87918352bec59b13f
6 months ago
Richard Fuchs
d1c235cbd2
MT#55283 tmp buffer improvements
...
Change-Id: I81987a1a559d5bdcd5b1725dba227ce44e096e91
7 months ago
Richard Fuchs
cd5a77ab96
MT#55283 fix colliding use of temp buffer
...
closes #2054
Change-Id: I7943d4591f7fb9f08d079411b4b3c04cf96675e5
7 months ago
Richard Fuchs
b1ac55c844
MT#55283 add str_dup_dup helper function
...
Change-Id: Ieacb147e3a98b5f31a8e45fb709df73636347cc0
7 months ago
Richard Fuchs
454983a3a8
MT#55283 add TOS to kernel player
...
Change-Id: I1e13015675b2b539e9c7cde01fba96a912726793
7 months ago
Richard Fuchs
d27fc60122
MT#55283 add missing opt setting
...
Fixes block-egress not being effective
Change-Id: Ib08146c62ae191abddd181e7df1f9f1e3149d6f9
7 months ago
Richard Fuchs
46a2124503
MT#55283 use wrapper function
...
Change-Id: I1ca86c0a815d959054c560ceed2610b3e2ab26f5
7 months ago
Richard Fuchs
690d601269
MT#55283 const qualifier
...
Change-Id: Ia042e3b8fb09fd832fef60a34c380e3b156aca56
7 months ago
Richard Fuchs
72ab151266
MT#55283 move uring conditions
...
Change-Id: If472d4c352d3e06faf87ab1f857e2fccb1c0d02d
7 months ago
Richard Fuchs
65b94a73a9
MT#55283 return success from add_stream
...
Change-Id: I0d507432993725085671ed19f7a98e69c23c84e3
7 months ago
Richard Fuchs
d813453a56
MT#55283 avoid implicit memcpy
...
Change-Id: I282c922b7866d5c7d837205ba9f91166a00e21aa
7 months ago
Richard Fuchs
26be887cae
MT#55283 generalise obj allocators
...
Change-Id: Ic927bcac573c5b7c0343c77bebdc3c524f2fca64
7 months ago
Richard Fuchs
cc53062ca1
MT#55283 auto detect libiptc
...
Instead of having to manually disable legacy iptables support, auto
detect presence of libiptc and only include the feature if present.
Closes #2045
Change-Id: I649320727e9e9a565eabd369c683dfe6b6bdaec1
7 months ago
Richard Fuchs
5defd9cdb6
MT#55283 fix blank lines in stats output
...
Change-Id: I9fcf9df800dd9c1e59a9b96bff339063da60f629
7 months ago
Orgad Shaneh
2bc07e3cc9
MT#55283 Support "record call" for publish
...
Initial call recording is set by "record call". This worked for
offer/answer but not for publish.
Closes #2052
Change-Id: I0d311406aec36392f29c324ec862baa50bf23756
7 months ago
Richard Fuchs
910624c997
MT#55283 remove redundant condition
...
Change-Id: I324e4eaaaa40bcc919c874b39fa26580b9b849cf
7 months ago
Richard Fuchs
c82d9ff2e6
MT#55283 update return type
...
Change-Id: Ia4fc6e186a9cb0ca6cee9ecd53118362233b1f09
7 months ago
Richard Fuchs
8b4219f739
MT#55283 introduce stream_fd lock
...
Required to avoid races over the "kernelized" flag
Change-Id: I316cc82d57a51e8778be4562a46a262804a7197f
7 months ago
Richard Fuchs
fede2a051e
MT#55283 fix deadlock retry logic
...
Change-Id: I6f4162f724e527828f4f14e26746dff7d43562f5
7 months ago
Richard Fuchs
0fa3641706
MT#55283 report netlink errors by seq num
...
Not 100% sure if this is how it's intended to be handled, as the failed
requests seem to produce multiple ACK messages, but at least this fixes
the immediate problem of the printed error message not matching the
request which failed.
Closes #2041
Change-Id: I2a6bf57ce996c134b44d4f3484164a39c68fc93c
8 months ago
Richard Fuchs
d891145474
MT#55283 add sequencing to netlink messages
...
Change-Id: I6346c79a204d0ee1f7587676848cdcfca7055262
8 months ago
Richard Fuchs
b833a39198
MT#55283 print readable msg for netlink errors
...
closes #2039
Change-Id: If6c16d29482f16ed57b9059f3c13b23520b74cab
8 months ago
Richard Fuchs
645b5e1319
MT#55283 return flexible error strings
...
Change-Id: I0d6dee21901f85be1bfffaabe9c94e66073b99ba
8 months ago
Richard Fuchs
5dcc70c240
MT#55283 track human readable messages
...
Change-Id: I53380194d66591ada7bf48bca3cae5a933eabc79
8 months ago
Richard Fuchs
44d4dae2e0
MT#55283 set AV seek flags
...
Fixes seeking for certain file formats
Change-Id: Ib7cd080e1bff134b568e7d3bd277c6954664b4ca
8 months ago
Richard Fuchs
11061b483e
MT#55283 simpler lookup for PCM16
...
Change-Id: Id473485bbd9ce82f18ef03436ae6edb604e139d0
8 months ago
Richard Fuchs
50dc4e5342
MT#55283 support generic playback from AV files
...
Closes #2034
Change-Id: I0fa6764f45aea27e4baca553ab0dc757f7fc1830
8 months ago
Richard Fuchs
b9d1509244
MT#55283 rename module
...
Change-Id: I81f5370655af00d3a99593eb17cb1d62d961370c
8 months ago
Richard Fuchs
c5458cb933
MT#55283 support nftables INET family
...
closes #1732
Change-Id: I04c94aa4f35c55a8035eb0edadd9280c380590a3
8 months ago
Richard Fuchs
b324647699
MT#55283 create and delete native nftables rule
...
Adds option to fall back to legacy XT target.
Change-Id: Ieda628313d42159df9a6e6281a50d4b289ab8a0c
8 months ago
Richard Fuchs
c2a9f0edcf
MT#55283 add dummy comment rule
...
Since CLI tools don't reliably print the rules pointing to the handler
kernel module, add a dummy rule in the vicinity that contains just a
comment explaining what's there.
Change-Id: Ib5c9e6959643b3b3be5acd05203e91763b52da54
8 months ago
Richard Fuchs
ecdccf07ec
MT#55283 use more specific struct member names
...
Makes it less confusing about which step of the process each callback is
used in.
Change-Id: If30bddcb0ffae68a6f8f3b67f0e8f479497f7ed9
8 months ago
Richard Fuchs
ecd535f725
MT#55283 markup chain name
...
Change-Id: I78ad020a193056f2f7f067ed0cb72d6b5053157c
8 months ago
Richard Fuchs
cc5c0f07cb
MT#55283 only remove rules with matching table
...
Change-Id: I19fba3b41634e3d7bd6fd66b9c64430d7976f723
8 months ago
Richard Fuchs
09be6451d5
MT#55283 replace linmnl/libnftnl usage
...
Change-Id: I42c64bf9b4cc78835f98030b540c982bf70b8b8b
8 months ago
Matteo Brancaleoni
e9fd1f89e3
MT#55283 Add inbound-peer, outbound-peer and peer flags for automatic interface selection
...
Introduce three new NG protocol flags that automatically select the matching
configured rtpengine interface based on the system's routing table:
- inbound-peer=<ip>: resolves to interface for inbound (from) direction
- outbound-peer=<ip>: resolves to interface for outbound (to) direction
- peer=<ip> resolves to interface when only one interface is required
When these flags are used, the system:
- Uses a temporary UDP socket to determine the local address assigned by routing
- Finds the first configured rtpengine interface matching that local address
- Uses that interface for the media stream
This allows dynamic interface selection based on network topology without
requiring explicit interface names in the signaling.
Closes #2033
Change-Id: I211806b9cef9d028fdb689d90ea3fe627bdf5d0d
9 months ago
Richard Fuchs
e5d3aa0f01
MT#55283 add poller status to Prom
...
Change-Id: I8f0bc1388dd0d6cbe28351896c062ed01d4f0b4c
9 months ago
Richard Fuchs
d279b14a99
MT#55283 export poller thread stats
...
Change-Id: I5b8b2e6c791d27a1d29e982c72005aff38e7cd6d
9 months ago
Richard Fuchs
9196bb5f5d
MT#55283 track poller stats
...
Count number of wakeups and number of items per wakeup
Change-Id: I75eb53804f9690722a3908339bf9f606c8a8f4a9
9 months ago
Richard Fuchs
750c00618f
MT#55283 increase poller wait time to forever
...
Change-Id: I1df315d9f5382a974d67471f0f2eedec0eb9cb69
9 months ago
Richard Fuchs
11f92ac502
MT#55283 use g_new instead of g_malloc
...
Change-Id: I54a69b5ecfe0650653080e345a69b0c257682c70
9 months ago
Richard Fuchs
15effb7641
MT#55283 type-safe thread helpers
...
Change-Id: I90ba4347ed787eb63bad84287bea200fac5dbe82
9 months ago
Richard Fuchs
0b94847eae
MT#55283 local var for shorter code
...
Change-Id: I1e8bb980a23402c1b3f5b2dc1d1a412a960a02e6
9 months ago
Richard Fuchs
5f832a5d81
MT#55283 refactor mem pinning into function
...
Change-Id: I8824dcf88412c68bb9f9df5dc0d6d0ed7e6fd067
9 months ago
Richard Fuchs
5263fb0098
MT#55283 pull down service ready notification
...
Change-Id: I1cd82828c15598ef7d2f6c868d3ea479ac3ed934
9 months ago
Alex Brown
2639d9c0d1
MT#55283 Fix Issue with pcap based recording getting overwritten
...
Closes #2025
Closes #2026
Change-Id: I9f49127725b867b5fc9e9a852e6688e2c1d10b49
9 months ago
Harsh Daga
d45a29e3cd
MT#55283 adaptive jitter buffer
...
closes #2018
Change-Id: I94d4eb08e96fe33e149a03a647c6b13c814d7469
9 months ago
Richard Fuchs
15682312b7
MT#55283 convert extmap to iqueue
...
Change-Id: Ib2cd22fe5e004fadd30d44d91fd9ad344e4b9b74
9 months ago
Richard Fuchs
f68e614709
MT#55283 convert slp to iqueue
...
Change-Id: I7afc869810917f05a08d0147b225d3162720e430
9 months ago
Richard Fuchs
ef8967dafe
MT#55283 convert packets_out to iqueue
...
Change-Id: Iff72ab45cd3d4f6579180b5ed121a1779ee8285b
9 months ago
Richard Fuchs
914f6dfa1a
MT#55283 use intrusive list
...
Change-Id: I53c561dcc781f5cbd367ccb0df7b6900241f5e24
9 months ago
Richard Fuchs
4f5d013640
MT#55283 introduce socket use counter
...
Change-Id: I2468f4faedd195c9ea52d6ee6c99eabf37b7e73e
9 months ago
Richard Fuchs
23aa836800
MT#55283 fix missing MQTT SSRC stats
...
Change-Id: I3464f56263f783b7d81d4bdddfe56cd1fafa9ac3
9 months ago
Richard Fuchs
1fdf5cf2ea
MT#55283 add TCP keepalives for Redis connections
...
Change-Id: Id16f7f0f547f45cbef95bc98ede67a30f01cf3b9
9 months ago
Richard Fuchs
750f0a88bb
MT#55283 improve timeout handling
...
Only look at the recv side of recvonly/sendonly stream pairs by default,
and only consider the silent-timeout for calls that have no receive
streams at all.
Change-Id: I7773a6cc35733b0d27c8268f648a98e59fce9813
9 months ago
Richard Fuchs
6b785e77a2
MT#55283 make arg non null
...
Change-Id: Ia30ab70c0a520b6469146bdb60fcd112f56673b3
10 months ago
Richard Fuchs
b0d2b82199
MT#55283 replace g_atomic with atomic_*
...
Change-Id: Ia0729df4449e8bd4a2028d0373089e0fc9e1e042
10 months ago
Richard Fuchs
37813ddf86
MT#63317 rework port opening mechanics
...
Instead of opening local sockets directly during call setup, just create
the appropriate objects first, and then open the actual sockets in a
second step.
Move the opening step down, after the bundle logic has run. This way we
can avoid opening sockets that aren't needed.
Removes an intermediate step of obtaining consecutive ports.
Change-Id: Ib94c871ed6b3a433872afd23cb1aebbd9910b33e
10 months ago
Richard Fuchs
78c2e1e157
MT#55283 update return type
...
Change-Id: I76f16c3a04b1276ca04d25ea4a09f6f115f31d4b
10 months ago
Richard Fuchs
0ea27e9193
MT#63317 split apart ICE startup
...
Gather candidates in one step, and create candidate pairings against
local sockets in a second step.
Change-Id: I85bba7fe95af14d7f77a14d5baad4ea072a83bd3
10 months ago
Richard Fuchs
2ba7bd1041
MT#63317 fix possible booboo
...
Change-Id: I98926165e834eba01ef702eda1467521dca2b713
10 months ago
Richard Fuchs
e121a1e289
MT#63317 eliminate sockets shut down test
...
If we clear the sockets from the endpoint map during monologue shutdown,
we can guarantee that no sockets present in an endpoint map are ever
closed.
Change-Id: I4e3b6f39d51145fbfaebbe0bc412d8f001bbb053
10 months ago
Richard Fuchs
5b199f473f
MT#63317 use endpoint map as test for disabled
...
Change-Id: I425e33030c22119d459e3f58a2b00a64126b9e69
10 months ago
Richard Fuchs
0ebc75d229
MT#63317 rework endpoint_map hunting
...
Store the current (last) used endpoint map in the media object. This can
then be directly used when port latching is requested.
Remove and close sockets from endpoint map if fewer ports are needed.
Change-Id: I58aab82f82ecc3b0a7fc7a781394c8d77e715ecf
10 months ago
Richard Fuchs
0be3d106b8
MT#55283 close sockets on unsubscribe
...
closes #2010
Change-Id: I988f495e99e6eca39029958be5e504999085f1b2
10 months ago
Richard Fuchs
fbb61c2454
MT#63317 don't rekernelize when SSRC order changes
...
Change-Id: Iadecf3501d836d6f6e83f851a45fa8aa3afb2570
10 months ago
Richard Fuchs
ae603e7c3e
MT#63317 fix incorrect sorting of PTs
...
Change-Id: Ifd8264e8f39503feda8330d82888d0cc62418e92
10 months ago
Richard Fuchs
0eea0db4ef
MT#63317 amend and fix some logging
...
Change-Id: I7bacf207de52614e5ece4c8aa0243d5033b6cbfa
10 months ago
Richard Fuchs
26385f3056
MT#63317 fix missing filter length setting
...
Change-Id: I020c3fd1187569ca15f5fec16d97f171166ea24c
10 months ago
Richard Fuchs
9790ee9232
MT#63317 add strict bundle mode
...
Change-Id: Ic2076525b9e655cfb7d6fb665898018d29b87d5e
10 months ago
Richard Fuchs
213855143e
MT#63317 don't run DTLS on bundled media
...
Change-Id: Ie515920dabc57d9812933670d5c878cba820fec5
10 months ago
Richard Fuchs
6ce23df003
MT#63317 delay start of DTLS
...
Change-Id: I600d7523aacd6cef87d736a85550550146940826
10 months ago
Richard Fuchs
37cbac5fa7
MT#63317 share ICE context when bundling
...
Change-Id: Iee91f340b46241b30a9a0e6e5eefb268f380576f
10 months ago
Richard Fuchs
a3f5246bdb
MT#63317 separate ICE init from ICE start
...
Change-Id: Idf600bce7306b2e0f808b14c3b853fb93fd05d4a
10 months ago
Richard Fuchs
8317cc7071
MT#55283 reorder ICE candidate check
...
Run the check against ICE candidates not just for DTLS packets, but for
all received packets, except STUN which have authentication and are
needed to learn new ICE candidates.
Change-Id: I25df8fa6db4f828a68ba3b9e5cd35d2b56c0df08
10 months ago
Richard Fuchs
847d004319
MT#55283 revamp kernel shm strategy
...
Change-Id: I16f8b60317fc21b20a5cff5b0ba5b6026981fc6b
10 months ago
Richard Fuchs
cf278b447e
MT#55283 delete from Redis when call goes standby
...
Ref #2007
Change-Id: Id634da90d4fdc9da082af5874a6d46d9d4b05f26
10 months ago
Richard Fuchs
2340b41ba2
MT#55283 check return values
...
Change-Id: If51c8fd9c544a5b6cb7413486df10223ba979afb
Warned-by: Coverity
11 months ago
Richard Fuchs
527e7b56b6
MT#55283 lock payload tracker
...
Change-Id: I22ef38f4b32ec6a710c7120378080d95dfa00b60
Warned-by: Coverity
11 months ago
Richard Fuchs
15a71f4070
MT#63317 fix off by one
...
Change-Id: I4fa5b6819e55e6cc42a6fbe9f0db8ffa2e7b384d
Warned-by: Coverity
11 months ago
Richard Fuchs
b018e64463
MT#63317 fix typo
...
Change-Id: I34359f41877819c031b927828cdf2d8d512c5f58
Warned-by: Coverity
11 months ago
Richard Fuchs
b26252b2a5
MT#55283 remove useless hash table
...
Change-Id: I4440acee225ced49c59493ed036e339c8a5e49c3
11 months ago
Richard Fuchs
e1cfefc07e
MT#55283 disable kernel RTCP FW if filtering
...
Change-Id: I9488b444d413d227153b2e73a3efe2facce98d26
11 months ago
Richard Fuchs
f0e5e27bb9
MT#63317 ignore SDP address for bundled media
...
Change-Id: I10d3418dce30d69f5268c6c4187bc15bdb18e82d
11 months ago
Richard Fuchs
40d45821fc
MT#63317 use correct bundle sink for kernel
...
Change-Id: If3cbe6477a2d951fd8d2aabe121e356a48de0384
11 months ago
Richard Fuchs
9baf027be1
MT#63317 print a=bundle-only
...
Change-Id: Ieca566bb76b54093a0012ccc0d7021a5cfa75a11
11 months ago
Richard Fuchs
3124ab01b7
MT#63317 support bundle-require
...
Change-Id: I82ab669458f56a4e3ec2edb95f7a499adadbb810
11 months ago
Richard Fuchs
4aa3641cad
MT#63317 avoid mismatched extmap IDs
...
Change-Id: I7489ebaf9dbcb4ebb0c0bf469872433c25a0acb4
11 months ago
Richard Fuchs
429c7b5c71
MT#63317 support bundle offer
...
Change-Id: Ibb271535c38654c4fa4d52026d6a4ce41535e3cb
11 months ago
Richard Fuchs
a76b0a7d5c
MT#63317 optionally return previous HT to caller
...
Change-Id: If00834e1b53698e469fa134d3eb799ab486013e3
11 months ago
Richard Fuchs
d78064344a
MT#63317 add SSRC mapping to kernel
...
Change-Id: If3af2ff872be340be57a2c53c35fcf2d83af6587
11 months ago
Richard Fuchs
44deb79faa
MT#63317 remove unused hash table
...
Not needed as it turns out
Change-Id: I5236d32b6a0a6c0d51e3e0e9445dd5efeca73536
11 months ago
Richard Fuchs
72ac8d8008
MT#63317 remove rejected streams from bundle
...
Change-Id: Ib596cf1479eae475c0fec3303afca7e24166f51e
11 months ago