Commit Graph

35759 Commits

Author SHA1 Message Date
Jakub Karolczyk 681c61ad32 [libvpx] Fix scan-build 14 2024-05-19 16:18:53 +01:00
Andrey Volk 503c19e12b
Merge pull request #2459 from signalwire/cseq
[Core, mod_sofia] Add switch_uint31_t type. Fix CSeq bigger than 2^31-1.
2024-05-09 22:45:26 +03:00
Andrey Volk 5b1c2688da [Core, mod_sofia] Add switch_uint31_t type. Fix CSeq bigger than 2^31-1. 2024-05-09 22:20:14 +03:00
Andrey Volk da93927c01
Merge pull request #2457 from signalwire/deadlock
[support-d] Add deadlock.py to tree.
2024-05-07 16:05:31 +03:00
Andrey Volk 91cc40d170 [support-d] Add deadlock.py to tree. 2024-05-07 10:24:07 +03:00
Andrey Volk 31cf32d91f
Merge pull request #2449 from signalwire/fix_scan_build_mod_amrwb
[mod_amrwb] Fix scan-build 14
2024-04-26 16:37:10 +03:00
Andrey Volk f3ace249f5
Merge pull request #2448 from signalwire/fix_scan_build_mod_avmd
[mod_avmd] Fix scan-build 14
2024-04-26 16:35:53 +03:00
Andrey Volk 6896088fa8
Merge pull request #2447 from signalwire/fix_scan_build_mod_av
[mod_av] Fix scan-build 14
2024-04-26 16:34:58 +03:00
Jakub Karolczyk 84ab90895a [mod_amrwb] Fix scan-build 14 2024-04-26 13:11:54 +00:00
Jakub Karolczyk 597ee613de [mod_avmd] Fix scan-build 14 2024-04-26 12:58:44 +00:00
Jakub Karolczyk ef32d90e91 [mod_av] Fix scan-build 14 2024-04-26 12:41:07 +00:00
Hadžem Hadžić d5ad504723
[mod_vlc] Resolve double mutex lock 2024-04-18 12:06:40 +03:00
Andrey Volk 739e770c34
Merge pull request #2388 from signalwire/build_system
[build] Split `create_dsc` and `create-orig` functions in `util.sh`.
2024-02-28 19:31:06 +03:00
Andrey Volk d7d38c7d03
Merge pull request #2381 from signalwire/opus_noop
[mod_opus] Fix status returned by switch_opus_decode(). Should be SWITCH_STATUS_FALSE instead of SWITCH_STATUS_NOOP. Add a unit-test.
2024-02-23 18:36:11 +03:00
Andrey Volk 5ce9057a12
Merge pull request #2392 from signalwire/kazoo
[Core] Remove mod_kazoo from tree
2024-02-22 22:06:32 +03:00
Jakub Karolczyk 49029c8575 [mod_sofia] Set missing CF_3PCC flag 2024-02-22 19:23:40 +03:00
Andrey Volk 70d76bcc0e [Core] Remove mod_kazoo from tree 2024-02-21 21:27:35 +03:00
s3rj1k eb5476ff66
[build] Split `create_dsc` and `create-orig` functions in `util.sh`. 2024-02-15 18:51:46 +01:00
Andrey Volk 647035c323 [mod_opus] Fix status returned by switch_opus_decode(). Should be SWITCH_STATUS_FALSE instead of SWITCH_STATUS_NOOP. Add a unit-test. 2024-02-06 00:36:35 +03:00
Anton Olofsson 9df3076f29
[mod_event_socket] Check if listener is running before pushing more logs or events to its queue
This fixes a possibility for MAX_MISSED to be exceeded if more logs are
attempted to be pushed to the listener's queue after running kill_listener but
before the listener thread gets CPU time and removes itself.

On a heavily loaded system with a lot of logs in the event dispatch queue
these excessive logs may prove fatal since socket_logger itself will produce
logs about the full queue, resulting in a circular situation of never-ending logs.

The same logic was applied to event_handler after finding the same behaviour
mentioned in signalwire/freeswitch#2143.
2024-01-29 19:05:45 +03:00
Andrey Volk 8e36c59033
Merge pull request #2281 from dragos-oancea/sdp_dialect
[core] SDP: replace SIP lingo in SDP offer/answer.
2024-01-27 14:27:09 +03:00
Dragos Oancea 8b7a8c4aea [core] SDP: replace SIP lingo in SDP offer/answer. 2024-01-26 21:01:32 +03:00
wmasilva 1c05719100
[Core] softtimer: fix crash in timezones when reloading xml
* switch_time: fix segfault null TIMEZONES_LIST.hash when reloading xml

* Unbind before destroying TIMEZONES_LIST.hash. Protect TIMEZONES_LIST.hash with a mutex that's allocated in core's global runtime.memory_pool so the mutex does not die on softtimer shutdown.

---------

Co-authored-by: Andrey Volk <andywolk@gmail.com>
2024-01-24 22:04:32 +03:00
Dmitry Kunilov d148a3e412
[mod_amr, mod_amrwb] Fix input data corruption
* Fix input data corruption in AMR and AMRWB codecs

* [amr/amrwb] Check encoded frame size before decoding

* [mod_amr, mod_amrwb] Coding guidelines cleanup.

---------

Co-authored-by: Dmitry Kunilov <dmitry.kunilov@upm.solutions>
Co-authored-by: Andrey Volk <andywolk@gmail.com>
2024-01-24 16:50:08 +03:00
mahald d3c60820d7
[mod_amqp] Adjusting to Appropriate Log Level for Message
* [mod_amqp] Adjusting to Appropriate Log Level for Message

Refined Logging Level for FreeSWITCH's mod_amqp: The logging level for the AMQP module in FreeSWITCH has been updated from 'warning' to 'debug'. This adjustment ensures a more suitable level for the log message and eliminates any potential impact on production environments. Previously, the 'warning' level would lead to unnecessary log entries for each individual message, although there was no actual warning condition. This change improves logging efficiency and appropriateness for mod_amqp's operations within FreeSWITCH.

* [MOD_AMQP] Change LogLevel to DEBUG1 as it is more appropriate for this message
2024-01-10 19:01:26 +03:00
Visytel a6e219062d
[Build-System, ldns] config.h change to not define inline under Windows to avoid clash with Windows winsock2.h inline usage. Use updated ldns tarball on Windows.
* [ldns] config.h change to not define inline under Windows to avoid clash with Windows winsock2.h inline usage
* [Build-System] Use updated ldns tarball on Windows.

---------

Co-authored-by: Andrey Volk <andywolk@gmail.com>
2024-01-08 12:00:28 +03:00
tmancill 0cea9811cd
[Docker] Change default freeswitch UID and GID to 499 in docker/master/Dockerfile
On several installs on recent Debian and Ubuntu systems, I have noticed
that GID 999 is already allocated on the system running the container,
making it a minor hassle to share a common freeswitch UID and GID
between the Docker host and the container.

The conflicting group id varies, but is typically either one of the systemd
groups or polkitd, which are dynamically created when those packages are
installed.  The behavior stems from the range of system GIDs being
between 100-999 ([see Debian Policy 9.2.2](https://www.debian.org/doc/debian-policy/ch-opersys.html#uid-and-gid-classes))
and the fact that system installation dynamically allocates from this
range.  I didn't track down exactly why these daemons are allocating
from the top of the range, since the default behavior of `adduser` and
`addgroup` ([link](6c04aa701a/adduser (L1255-1269)))
is to search from the bottom of the range, and the manpage for
`groupadd` says that it's default is also to use the smallest id,
but perhaps it was to avoid (other) conflicts.

The approach taken in this PR is to default to 499, more in the middle
of the range, which should reduce the chance of conflicting with an
existing system UID and GID.  The values are also now exposed as ARGs
and so can be explicitly set during the build with
`--build-arg="FREESWITCH_UID=xxx"` and `--build-arg="FREESWITCH_GID=yyy"`
if desired.
2024-01-05 18:42:58 +03:00
Andrey Volk 987e87bc0b version bump 2023-12-22 22:37:54 +03:00
Andrey Volk 6ae8ce604a swigall 2023-12-22 17:12:41 +00:00
Andrey Volk 86cbda90b8
Merge pull request from GHSA-39gv-hq72-j6m6
[Core] Reject DTLS packets coming from a source different than the current ICE negotiated path.
2023-12-22 17:57:34 +03:00
Jakub Karolczyk 6ea8c96c3d [Core] Reject DTLS packets coming from a source different than the current ICE negotiated path. 2023-12-21 22:56:32 +00:00
Andrey Volk 623f6176a3
Merge pull request #2342 from signalwire/sofia11317
Bump sofia-sip library requirement to version 1.13.17
2023-12-22 01:48:43 +03:00
Andrey Volk e9e8e7fe1a Bump sofia-sip library requirement to version 1.13.17 2023-12-22 01:09:19 +03:00
Andrey Volk e010821bc5
Merge pull request #2339 from signalwire/static
[mod_conference] Remove static from cJSON vars in conference_jlist
2023-12-19 23:23:30 +03:00
Andrey Volk 2e7424169e [mod_conference] Remove static from cJSON vars in conference_jlist 2023-12-19 22:42:54 +03:00
Andrey Volk c26b5cdfa3
Merge pull request #2333 from signalwire/implicit
[Core] Fix implicit conversion from enumeration type 'switch_odbc_status_t' to different enumeration type 'switch_status_t'.
2023-12-14 14:01:57 +03:00
Andrey Volk c155ea7008 [Core] Fix implicit conversion from enumeration type 'switch_odbc_status_t' to different enumeration type 'switch_status_t'. 2023-12-14 13:44:22 +03:00
Jakub Karolczyk 48608177d7 [core] Fix missing 192 key lengths 2023-12-13 00:27:59 +03:00
Andrey Volk 01068048f8
Merge pull request #2329 from signalwire/reason
[mod_sofia] BYE Reason header was limited in length.
2023-12-11 23:12:27 +03:00
Andrey Volk f7e19e5134 [mod_sofia] BYE Reason header was limited in length. 2023-12-11 22:48:00 +03:00
Andrey Volk 11048483d3
Merge pull request #2273 from asymptotic-io/mod-conference-fix
[mod_conference] Avoid a race in member->read_impl access
2023-11-07 18:50:30 +03:00
Arun Raghavan f05b7507aa [mod_conference] Avoid a race in member->read_impl access
The conference output loop accesses the member's read_impl while
resampling. The output loop also spawns off the input loop thread, which
is where the member->read_impl is actually initialised. This results in
an uncommon race where the output loop sometimes gets an uninitialised
member->read_impl and bails with logs something like this:

2023-10-12 18:19:01.436844 [DEBUG] conference_loop.c:1340 Setup timer soft success interval: 20  samples: 960 from codec L16
2023-10-12 18:19:01.436844 [DEBUG] conference_loop.c:1497 Outbound conference channel answered, setting CFLAG_ANSWERED
2023-10-12 18:19:01.436844 [NOTICE] switch_core_media.c:15852 Activating write resampler
2023-10-12 18:19:01.436844 [DEBUG] switch_core_media.c:16097 Engaging Write Buffer at 1920 bytes to accommodate 0->1920
2023-10-12 18:19:01.436844 [ERR] switch_core_media.c:16112 Write Buffer 0 bytes Failed!

As a solution, we initialise the member->read_impl even before we start
up the input loop, so that this race can never happen.
2023-11-07 09:42:27 -05:00
Andrey Volk 57fe9aa6b6
Merge pull request #2253 from signalwire/fix_ice_flopping
[core] Fix flopping routes on ICE negotiation
2023-10-27 19:29:22 +03:00
Jakub Karolczyk 104c0b3fec [core] Fix flopping routes on ICE negotiation 2023-10-12 12:15:46 +00:00
Andrey Volk f1fb05214e
Merge pull request #2266 from signalwire/vpx
[libvpx] Fix bug with smaller width bigger size
2023-10-06 01:07:16 +03:00
Andrey Volk 2ab7a3d323 [libvpx] Fix bug with smaller width bigger size 2023-10-06 00:42:10 +03:00
Andrey Volk f5a41d3092
[mod_pgsql] Coverity: 1227660 Logically dead code 2023-10-05 18:05:32 +03:00
Andrey Volk d08424384b
[Core] Coverity: 1024552 Logically dead code 2023-10-05 18:03:32 +03:00
Andrey Volk 79ce088101
[Core] Coverity: Dereference before null check
* [Core] Coverity: 1060958 Dereference before null check

* [Core] Coverity: 1024236 Dereference before null check
2023-10-05 00:26:26 +03:00
Andrey Volk c4115537e0
[Core] Coverity: Use of 32-bit time_t
* [Core] Coverity: 1500270 Use of 32-bit time_t

* [Core] Coverity: 1500229 Use of 32-bit time_t

* [Core] Coverity: 1500235 Use of 32-bit time_t

* [Core] Coverity: 1500244 Use of 32-bit time_t

* [Core] Coverity: 1500250 Use of 32-bit time_t

* [Core] Coverity: 1500245 Use of 32-bit time_t

* [Core] Coverity: 1500255 Use of 32-bit time_t

* [Core] Coverity: 1500370 Use of 32-bit time_t

* Cleanup
2023-10-04 18:24:16 +03:00