Gustavo Garcia
c8663f4a91
fix turn session leak ( #962 )
...
Actually, as below, before fixing, the sessions_map may be larger and
larger when register_callback_on_ioa_socket inside
open_client_connection_session retrun -1. The reason is that, if
register_callback_on_ioa_socket return -1, no read/write/ event will be
registered and no timeout event will be registered, in this case, the
session will never be deleted from sessions_map.

After fixing, when register_callback_on_ioa_socket fail,it doesn't
return immediately, instead, we still register
client_to_be_allocated_timeout_handler in the next step of
open_client_connection_session. In this case, the unuseful session will
be deleted and freed after timeout.
@eakraly @ggarber
2022-08-29 21:56:47 +02:00
Pavel Punsky
41a8aa09ff
Document dependency between new-log-timestamp-format and new-log-timestamp
2022-08-27 20:34:35 -07:00
huhaipeng
f22376ce29
fix turn session leak
2022-08-26 11:17:13 +08:00
Steffen Moser
7cfa7b1c4d
Merge branch 'coturn:master' into master
2022-08-23 09:01:03 +02:00
Steffen Moser
02461e9fbc
First step to re-enable compilation with OpenSSL 1.0.x
2022-08-23 08:58:45 +02:00
Pavel Punsky
ed29e986c1
Disable systemd when building on macOS using CMake
2022-08-22 18:53:43 -07:00
Steffen Moser
b722c84b45
Allow compilation on Solaris 11.4
2022-08-22 11:22:59 +02:00
Gustavo Garcia
4546b85cd4
Merge pull request #943 from jeremy-murphy/OpenSSL_dependency
...
[turncommon] depend on OpenSSL
2022-08-17 13:02:03 +02:00
Gustavo Garcia
4de2d530ff
Merge pull request #942 from eakraly/disable-renegotiation
...
Disable SSL renegotiation
2022-08-16 08:12:57 +02:00
Gustavo Garcia
dfa978c669
Merge pull request #792 from yfaker/master
...
Fix user quota release #786
2022-08-16 08:04:08 +02:00
Jeremy Murphy
832f11331f
Depend on OpenSSL::Crypto and OpenSSL::SSL
...
Maybe only one is strictly required, but the list of headers used in
ns_turn_openssl.h includes things from both.
2022-08-16 12:41:44 +10:00
Gustavo Garcia
85c85ab34c
Merge pull request #829 from fancycode/additional-report-properties
...
Include additional properties in redis allocation status reports.
2022-08-15 12:59:42 +02:00
Joachim Bauch
1b83894be6
Store socket type in variable.
2022-08-15 08:43:53 +02:00
Pavel Punsky
30fbdc740e
Disable SSL renegotiation
2022-08-14 21:07:07 -07:00
Gustavo Garcia
f74f50c86d
Merge pull request #773 from haseebq/performance_fix
...
Fix for performance regression caused by CVE-2020-4067 fix
2022-08-10 11:41:08 +02:00
Gustavo Garcia
38c4055cb0
Merge pull request #789 from korayvt/syslog_facility
...
Add syslog facility configuration
2022-08-10 11:40:43 +02:00
KORAY VATANSEVER
2b91f0ad8b
Function renamed for the consistency. Incomplete coding completed.
...
Tested for the empty and invalid values. Parameter is ignored in those cases.
2022-08-09 13:06:45 +03:00
unicode-it
e337c179c6
added MHD_FLAG to make promhttp daemon use dual_stack
2022-08-08 18:53:40 +02:00
Gustavo Garcia
bb1bd984f2
Merge pull request #849 from rozhuk-im/libressl_340
...
Fix build with libressl 3.4.0+
2022-08-08 18:23:32 +02:00
NeoCat
6be087581f
uclient: Show error on invalid peer options specification
2022-08-05 13:19:18 +09:00
Daniil Meitis
ca269fb691
Rename metric
2022-08-01 18:33:15 +03:00
Daniil Meitis
cd221c10fa
Merge branch 'master' into prom_allocations_metric
2022-08-01 18:31:09 +03:00
Gustavo Garcia
7400edc703
Fixed missed assignment to freed memory
2022-08-01 00:13:26 +02:00
Gustavo Garcia
bf54410bc7
Merge branch 'sysvinit/toggle-username-labels-upstream' of github.com:wireapp/coturn into wireapp-sysvinit/toggle-username-labels-upstream
2022-07-29 09:47:17 +02:00
Gustavo Garcia
ecdc8893ee
Merge pull request #840 from lionelnicolas/feature/prometheus-port
...
Add ability to configure prometheus listener port
2022-07-29 01:03:58 +02:00
Molly Miller
6fd08bac3b
Invert logic for handling username metrics labels.
2022-07-27 10:44:13 +02:00
Molly Miller
299fcea34c
Make username labeling in metrics configurable.
2022-06-20 14:34:35 +01:00
Dave Lambley
12c19817b8
Correct typo
2022-01-07 18:53:24 +00:00
Rozhuk Ivan
8b3bf44f49
Fix build with libressl 3.4.0+
...
SSL will become opaque in LibreSSL 3.4.x, hence the code reaching inside
it will result in build breakage.
SSL_set0_rbio() now available in libressl.
2021-11-10 00:32:18 +03:00
Lionel Nicolas
19495b2d1d
Add ability to configure prometheus listener port
2021-10-22 19:47:49 -04:00
Lionel Nicolas
c42cd844de
Fix typo and formatting in --prometheus documentation
2021-10-22 19:47:16 -04:00
Joachim Bauch
cb3dd607ac
Include additional properties in redis allocation status reports.
...
- Socket type
- Local IP address / port
- Remote IP address / port
- SSL type
- SSH cipher
2021-10-04 09:18:43 +02:00
Mészáros Mihály
a19bc7c464
Revert by hand merge PR825 in favor PR755 more simple solution
2021-09-22 13:32:34 +02:00
Mészáros Mihály
b5a597836b
Merge branch 'master' into fix_sqlite_shutdown_race
2021-09-22 11:12:41 +02:00
Mészáros Mihály
82e74935db
Merge pull request #825 from whereby/argggh/no-sqlite3-shutdown
...
dbd_sqlite: Don't shutdown sqlite3 db during init
2021-09-22 10:59:16 +02:00
Giacomo Vacca
8aded3556e
Issue #699 Return codes for prom server
2021-09-21 17:26:48 +02:00
Arne Georg Gisnås Gleditsch
8d66122d91
dbd_sqlite: Don't shutdown sqlite3 db during init
...
Ref https://www.sqlite.org/c3ref/initialize.html :
The sqlite3_initialize() interface is threadsafe, but
sqlite3_shutdown() is not.
We currently call `sqlite3_shutdown` from all threads as part of
`sqlite_init_multithreaded`, and this has been observed to have
adversarial effects during startup if many threads receive their first
inbound request at the same time. The apparent motivation behind
calling shutdown is to make the subsequent calls to `sqlite3_config`
succeed, since these ordinarily return SQLITE_MISUSE if called
multiple times. However, this function is also documented to not be
thread safe, so introduce a barrier that ensures we only initialize
once over all threads.
2021-09-20 16:33:25 +02:00
z00316370
5cf657cdff
Fix user quota release #786
2021-07-15 19:26:31 +08:00
KORAY VATANSEVER
22af3ea567
Add syslog facility configuration
2021-07-07 15:56:30 +03:00
Daniil Meitis
99aa623aaf
Add current allocations number gauge metric
2021-06-21 17:21:17 +04:00
Mészáros Mihály
6492f51a63
Merge pull request #767 from ggalperi/patch-1
...
Fix server->log_binding usage
2021-06-17 12:57:45 +02:00
Mark Hills
713bbefd5e
Fix a segfault when a TLS context is not used
...
If the configuration contains entries such as:
no-tlsv1
no-tlsv1_1
then the SSL context is NULL. The previous code was simple enough that it
handled this case; the new code needs to deal with it explicitly.
[*] https://github.com/coturn/coturn/issues/770
2021-06-15 23:44:02 +02:00
Mészáros Mihály
7ad04a37d6
Not send SOFTWARE attr, if no_sotware_attribute on
2021-06-05 22:10:31 +02:00
Mészáros Mihály
708b83ea78
RESPONSE_ORIGIN attribute only if rfc5780 is on
2021-06-05 22:10:31 +02:00
Mészáros Mihály
54ef051844
Disable stun backward compatibility
2021-06-05 22:10:31 +02:00
Mészáros Mihály
eda11698f0
Add option no-rfc5780
...
To avoid any amplifiaction STUN binding attacks.
2021-06-05 22:10:31 +02:00
Mészáros Mihály
8c9622ad18
Add a check, don't SSL_CTX_up_ref a null pointer
...
This cause segmentation failure. Regression..
2021-06-05 22:10:31 +02:00
Mészáros Mihály
88f5119e1b
Include ssl.h
2021-06-05 22:10:31 +02:00
Haseeb Abdul Qadir
e88de80abd
Make sure we zero out any padding added to the attribute
2021-05-22 11:53:25 -04:00
Haseeb Abdul Qadir
93c5387180
Avoid using bzero for the entire stun_buffer_list_elem and only init metadata
...
On high traffic servers bzero -> memset takes a significant amount of time because each stun_buffer_list_elem can be ~64kb
2021-05-21 07:51:45 -04:00