Commit Graph

35787 Commits

Author SHA1 Message Date
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
Andrey Volk fb4b367ff1
Merge pull request #2259 from signalwire/vpx
[libvpx] VP8: disallow thread count changes
2023-10-04 18:13:53 +03:00
Andrey Volk 6f9e72c585 [libvpx] VP8: disallow thread count changes 2023-10-04 00:47:39 +03:00
Andrey Volk 792eee44d0
Merge pull request #2232 from signalwire/coverity_1364946
[core] Coverity 1364946 Unchecked return value
2023-09-11 14:06:48 +03:00
Andrey Volk ff71b9089c
Merge pull request #2233 from signalwire/coverity_1325269
[core] Coverity 1325269 Dereference before null check
2023-09-11 14:06:05 +03:00
tmancill c6ff92923d
updates for the Debian Dockerfile (#2234)
* default to Debian bookworm

* use DEBIAN_VERSION instead of lsb_release; gosu is in Debian since buster

* update comments for FS_META_PACKAGE and exposed ports

* fix SHELL invocation so 'RUN' works as expected in downstream builds

See:  https://docs.docker.com/engine/reference/builder/#shell
2023-09-09 12:38:50 -04:00
tmancill dc3c0f00f3
misc readme updates (#2235)
* Update README.md regarding the archived freeswitch-users mailing list

* update docker/README.md to suggest --network host
2023-09-09 12:26:04 -04:00
Jakub Karolczyk bb9afcb388
[core] Coverity fixes
* [core] Coverity 1518099, 1518097, 1518098 (Unchecked return value from library)

* [core] Coverity 1468551 Unchecked return value

* [core] Coverity 1468293 Unchecked return value

* [core] Coverity 1468274 Explicit null dereferenced

* [core] Coverity 1395588 Unchecked return value

* [core] Coverity 1395515 Logically dead code

* [core] Coverity 1364984 Result is not floating-point

* [core] Coverity 1395554, 1468440 Dereference before null check

* [core] Coverity 1024487 Dereference after null check

* [core] Coverity 1024872 Unchecked return value

* [core] Coverity 1025822 Unchecked return value

* [core] Coverity 1025823 Unchecked return value

* [core] Coverity 1087637, 1346467, 1087638 Unchecked return value

* [core] Coverity 1107607 Unchecked return value

* [core] Coverity 1210777 Unchecked return value

* [core] Coverity 1227670 Dereference before null check

* [core] Coverity 1024551 Logically dead code

* [core] Coverity 1024560 Logically dead code

* [core] Coverity 1024664 Operands don't affect result

* [core] Coverity 1364957 Dereference after null check

* [core] Coverity 1395572 Logically dead code

* [core] Coverity 1412459 Unchecked return value

* [core] Coverity 1412490 Unchecked return value

* [core] Coverity 1395515/2 Logically dead code

* [core] Coverity cleanup
2023-09-08 20:17:57 +03:00
Jakub Karolczyk 4c51ba9064 [core] Coverity 1364946 Unchecked return value 2023-09-08 17:54:58 +01:00
Jakub Karolczyk ebcb099a01 [core] Coverity 1325269 Dereference before null check 2023-09-08 17:54:33 +01:00
Dragos Oancea b6ccc27e6f [core] JB audio: check for jb type and silence some debug. (#1191) 2023-09-05 23:19:59 +03:00
Douglas Vought 07f192ca03
[contrib/timezone-gen] Fix timezone gen (#2215)
* [contrib/timezone-gen] Move timezone-gen.pl to own folder

* [contrib/timezone-gen] Add fixTzstr

* [contrib/timezone-gen] Add tests and zone data getter
 - tests.pl can be used to verify that the generated timezone conf
   will produce the correct datetimes by testing them against
   what the system's `date` says
 - build-zonedata.pl will download the latest tzdb data and build
   the posix timezone data files. It only builds what is needed
   rather than adding extraneous "right/" and "posix/" timezones.
   FreeSWITCH doesn't seem to be able to use the "right/"
   timezone files.
 - data/ is where the various files needed to generate the
   timezones gets stored
2023-09-05 23:11:01 +03:00
Andrey Volk 0df47beebe
Merge pull request #2216 from voughtdq/update-timezones
[timezones] Update timezones to version 2023c.
2023-09-05 20:12:52 +03:00
Douglas Vought 7d52ceb69d [timezones] Update timezones to version 2023c. 2023-09-05 12:46:13 -04:00
Andrey Volk b74245d48a version bump 2023-08-13 23:20:20 +03:00
Andrey Volk 5c289cc063 swigall 2023-08-13 16:00:05 +00:00
Andrey Volk 9347c96712 [Core] check_ice: sanitize second field of the candidates. Add new switch_is_uint_in_range() API. 2023-08-13 15:49:58 +03:00
Sergei Rozhkov eb918fe180
[Core] Fix switch_console.c for Galera Mariadb cluster
Fix in switch_console.c file.
Adds column names when inserting data.
Calls to use the complete table in Galera Multi-Master Cluster
2023-08-11 23:13:00 +03:00
Len 665745cfeb
Merge pull request #2201 from signalwire/updates
[Configuration]Update freeswitch.xml
2023-08-11 14:18:39 -04:00
Len 6355f9190a
Update freeswitch.xml 2023-08-11 14:03:04 -04:00
Andrey Volk 113889b14d
Merge pull request #1554 from wmasilva/mod_verto-msg_event_add_context_header
[mod_verto] Add context into msg event header
2023-08-11 20:08:31 +03:00
Sergei Rozhkov c5be6262b4
[mod_mariadb] Fix "DeadLock. The retries are over." message.
Co-authored-by: Sergei Rozhkov <git@zserg.ru>
2023-08-11 19:53:32 +03:00
António Silva 558d3a6b11 [mod_verto] Add context into msg event header 2023-08-11 18:36:47 +03:00