1
0
mirror of https://github.com/coturn/coturn.git synced 2025-12-25 01:41:00 +01:00

150 Commits

Author SHA1 Message Date
google-labs-jules[bot]
ad8ff3040f feat: Omit STUN error reasons by default, add option to send them
This commit changes the server's default behavior to omit STUN error
reason phrases in responses. A new option, `--send-error-reason` (and
corresponding config file setting `send-error-reason`), is introduced
to enable the inclusion of these reason phrases if desired.

This change aims to reduce response size by default, while still
allowing you to enable more verbose error messages for debugging.

Changes include:
- Renamed `no_error_reason` to `send_error_reason` in `turn_params_t`.
- Default for `send_error_reason` is now `false` (reasons omitted).
- Command-line option changed to `--send-error-reason` to enable reasons.
- Updated `mainrelay.c` for new option name, logic, and usage string.
- Updated all `turnserver.conf` files (`examples/etc/turnserver.conf`,
  `docker/coturn/turnserver.conf`) to reflect the new option and default.
- Adjusted conceptual test cases for the new default behavior.
- Partially updated `ns_turn_server.c` to use the new
  `send_error_reason` flag. Due to some limitations I encountered, a full update
  to `ns_turn_server.c` could not be reliably completed and will
  require your manual review and completion to ensure all error generation
  sites correctly adhere to the `send_error_reason` flag (sending
  reasons only when it's true).
2025-05-31 18:27:43 +00:00
Pavel Punsky
14f84fa48c
[BREAKING] Deprecate response-origin-only-with-rfc5780 (#1690)
Make this true - response-origin-only will only be enabled with rfc5780 option enabled
2025-05-28 16:37:20 -07:00
Pavel Punsky
4cc076d424
[BREAKING] Invert no-stun-backward-compatibility to be default on (#1689)
Deprecate `--no-stun-backward-compatibility` and set it to true by
default
Add new option `--stun-backward-compatibility`, off by default

Update example/recommended configuration files

This is a breaking change as passing `--no-stun-backward-compatibility`
will be rejected as invalid argument
2025-05-28 16:23:33 -07:00
Pavel Punsky
368355a06f
Invert RFC5780 option to default off (#1688)
Invert `--no-rfc5780` option to be true by default
Make it `--rfc5780` to enable it
Update example/recommended configuration files

Passing `--no-rfc5780` will have no effect as this is the default
behavior now
2025-05-28 15:08:57 -07:00
tyranron
60813060da
Update Debian "bookworm" to 20250520 snapshot in Docker image 2025-05-22 13:47:52 +02:00
tyranron
1adf0213d7
Update Debian "bookworm" to 20250428 snapshot in Docker image 2025-04-29 16:53:44 +02:00
tyranron
1bc31844e0
Update Debian "bookworm" to 20250407 snapshot in Docker image 2025-04-10 13:28:35 +03:00
tyranron
831b7245aa
Update Debian "bookworm" to 20250317 snapshot in Docker image 2025-03-18 12:23:25 +02:00
tyranron
7b46ba121d
Update Debian "bookworm" to 20250224 snapshot in Docker image 2025-03-04 14:08:35 +01:00
tyranron
7273e70bf3
Update Alpine to 3.21.3 version in Docker image 2025-02-17 12:58:42 +02:00
tyranron
3b2fb7ccef
Update Debian "bookworm" to 20250203 snapshot in Docker image 2025-02-06 14:25:28 +02:00
tyranron
2acb4b1989
Update Debian "bookworm" to 20250113 snapshot in Docker image 2025-01-14 12:39:57 +02:00
tyranron
a85eefc48a
Update Alpine to 3.21.2 version in Docker image 2025-01-09 12:58:41 +02:00
tyranron
e825110d38
Update Alpine to 3.21.1 version in Docker image 2025-01-08 13:02:43 +02:00
tyranron
326b983ece
Update Debian "bookworm" to 20241223 snapshot in Docker image 2024-12-25 11:08:34 +02:00
Pavel Punsky
94fcfadce1
[BREAKING] Reverse SOFTWARE_ATTRIBUTE_OPT to avoid inverse logic (#1598)
As part of looking at #1588 , I figured that sending `SOFTWARE`
attribute is also part of a problem as it increases messages sent out by
coturn and thus increasing amplification factor. For 4.6.2, the
additional size is 24 bytes (4 bytes attribute header, and 20 bytes for
"Coturn-4.6.2 'Gorst'")

If we are to use an example from #1588, "A 62 byte request will be met
with Coturn’s 401 Unauthorized response which is 150 bytes, a factor of
~2.42." - without SOFTWARE the response will be 126 bytes which reduces
amplification factor to ~2.

As I observed with multiple providers using coturn - some of the are
sending it. Meaning, they do not set `--no-software-attribute` - most
probably due to lack of clarity about this setting.

I believe sending SOFTWARE_ATTRIBUTE should be off by default which is
hinted in the RFC
(https://datatracker.ietf.org/doc/html/rfc8489#section-16.1.2)

Detailed changes:
- Extract setting the attribute into a function to avoid code
duplication
- This option is now not reloadable
- The option is now called `software_attribute` because inverse logic
creates multiple double-not in the code which makes it harder to read.
- `no-software_attribute` is still functional but marked as deprecated
in documentation

Test Plan:
- Run local tests with different cli arguments (new and deprecated) and
confirm SOFTWARE attribute is off by default, and added when arguments
say so
2024-12-13 09:28:45 -08:00
tyranron
a6b052c570
Upgrade Docker image to 4.6.3 Coturn version 2024-12-11 19:33:47 +01:00
Alex Gustafsson
d63704c72d
Implement custom prometheus http handler (#1591)
Implement a custom prometheus http handler in order to:

1. Support listening on a specified address as opposed to any
2. Remove the requirement on the unmaintained promhttp library

This feature comes with one limitation: if an IPv4 address is used, the
server will not listen on the IPv6-mapped address, even if IPv6 is
available. That is, dual-stacking does not work.

Solves: #1475

---------

Co-authored-by: Pavel Punsky <eakraly@users.noreply.github.com>
2024-12-10 10:28:43 -08:00
tyranron
8f9c87075b
Upgrade Alpine to 3.21 version in Docker image 2024-12-06 19:10:33 +01:00
tyranron
817bbd1bea
Update Debian "bookworm" to 20241202 snapshot in Docker image 2024-12-05 12:28:33 +01:00
tyranron
f8c5695827
Update Debian "bookworm" to 20241111 snapshot in Docker image 2024-11-13 12:17:07 +01:00
tyranron
8e3a03d2da
Update Debian "bookworm" to 20241016 snapshot in Docker image 2024-10-21 10:47:11 +02:00
tyranron
775d8fbf70
Update Debian "bookworm" to 20240926 snapshot in Docker image 2024-09-30 16:17:57 +03:00
tyranron
bc39021cd7
Update Alpine to 3.20.3 version in Docker image to fix CVE-2024-6119 2024-09-09 12:35:02 +03:00
tyranron
24346a4542
Update Debian "bookworm" to 20240904 snapshot in Docker image 2024-09-06 15:23:11 +03:00
tyranron
8976c989c8
Update Debian "bookworm" to 20240812 snapshot in Docker image 2024-08-19 13:58:56 +03:00
tyranron
00ce90cee0
Update Alpine to 3.20.2 version to fix CVE-2024-5535 in Docker image 2024-07-26 13:10:14 +03:00
tyranron
7afa4e9ac9
Update Debian "bookworm" to 20240722 snapshot in Docker image 2024-07-26 12:39:52 +03:00
tyranron
d541f56613
Update Debian "bookworm" to 20240701 snapshot in Docker image 2024-07-03 11:50:59 +03:00
tyranron
fbe07c4a16
Update Alpine to 3.20.1 version to fix CVE-2024-4741, CVE-2023-42364 and CVE-2023-42365 in Docker image 2024-06-21 07:19:38 +02:00
tyranron
0868999b5c
Update Debian "bookworm" to 20240612 snapshot in Docker image 2024-06-13 14:07:26 +02:00
tyranron
74f279d695
Upgrade Alpine to 3.20 version in Docker image 2024-05-24 16:56:31 +02:00
tyranron
d72919e4e1
Update Debian "bookworm" to 20240513 snapshot in Docker image 2024-05-14 15:01:30 +02:00
tyranron
e1d8661b40
Update Debian "bookworm" to 20240423 snapshot in Docker image 2024-04-24 12:19:08 +03:00
Nikolayshcx
eb3af26867
Add support for raw public keys (Rfc 7250) (#1458)
Resolving #1456

---------

Co-authored-by: nmegdanov <nikolay.megdanov@softavail.com>
2024-04-19 17:12:48 +02:00
tyranron
bc54a4d940
Update Debian "bookworm" to 20240408 snapshot in Docker image 2024-04-10 14:30:37 +03:00
tyranron
873cabd6a2
Update Debian "bookworm" to 20240211 snapshot in Docker image 2024-02-14 12:54:35 +02:00
tyranron
94ade4b01f
Update Debian "bookworm" to 20240130 snapshot in Docker image 2024-02-01 12:33:57 +02:00
tyranron
d274637d51
Update Alpine to 3.19.1 version in Docker image to fix CVE-2023-6129, CVE-2023-6237 and CVE-2024-0727 2024-01-29 12:07:35 +02:00
vuittont60
da6bc6b0c4
Fix typos (#1345) 2024-01-15 18:31:16 -08:00
tyranron
131ada68e6
Update Debian "bookworm" to 20240110 snapshot in Docker image 2024-01-11 12:24:29 +01:00
tyranron
d11451b902
Update Debian "bookworm" to 20231218 snapshot in Docker image 2023-12-19 13:37:11 +01:00
tyranron
7dc52de6c3
Upgrade Alpine to 3.19 version in Docker image 2023-12-08 13:20:35 +01:00
tyranron
e0a040caac
Update Alpine to 3.18.5 version to fix CVE-2023-5678 in Docker image 2023-12-01 13:21:55 +01:00
tyranron
4353f05021
Update Debian "bookworm" to 20231120 snapshot in Docker image 2023-11-21 13:29:05 +01:00
tyranron
0fb6addecb
Update Debian "bookworm" to 20231030 snapshot in Docker image 2023-11-01 12:19:46 +02:00
tyranron
e7c1551de1
Try test s390x platform Docker images in MacOS on CI 2023-10-05 14:25:26 +03:00
tyranron
c03096ee7b
Update Alpine to 3.18.4 version and Debian "bookworm" to 20230919 snapshot in Docker image 2023-10-04 14:04:56 +03:00
Alexander Udovichenko
2a695ea855
Add warning and disable web admin if no-tls option used (#1256)
Fixes https://github.com/coturn/coturn/issues/1239

https to web ui freeze in browser if no_tls option used, because no tls
stuff initialized.
This PR add warning about this and comment aboute this in default config
2023-08-27 16:27:37 -07:00
tyranron
d7db17f048
Fix redundant Docker image tags with major OS version (#1230, #1226) 2023-07-05 12:27:59 +03:00