godot/modules/mbedtls
Fabio Alessandrelli 2c789788c0 mbedTLS: Fix concurrency issues with TLS
When we first integrated mbedTLS, we decided not to enable
MBEDTLS_THREADING_C (which adds mutex locking to calls modifying the
state), and instead to simply create separate contexts ("states") for
each connection.

This worked fine until recently.
Sadly, mbedTLS 3 added a global state for the new PSA crypto
functionalities (which are required to support TLSv1.3).
This results in TLSv1.3 connections to access and modify the global
state concurrently when running in threads.

This commit enables MBEDTLS_THREADING_C, and MBEDTLS_THREADING_C_ALT to
provide a generic Godot implementation using the engine Mutex class.
2025-05-08 11:45:00 +02:00
..
tests Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
config.py Cleanup: Remove executable bit from files which don't need it 2021-01-19 23:36:42 +01:00
crypto_mbedtls.cpp Remove String clipping constructors. 2025-03-15 12:34:44 +01:00
crypto_mbedtls.h Add and require GDSOFTCLASS for Object subclasses that want to cast but do not use GDCLASS. 2025-03-31 20:49:50 +02:00
dtls_server_mbedtls.cpp Improve use of Ref.is_null/valid 2024-12-23 16:35:02 -05:00
dtls_server_mbedtls.h Add and require GDSOFTCLASS for Object subclasses that want to cast but do not use GDCLASS. 2025-03-31 20:49:50 +02:00
packet_peer_mbed_dtls.cpp Improve use of Ref.is_null/valid 2024-12-23 16:35:02 -05:00
packet_peer_mbed_dtls.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
register_types.cpp mbedTLS: Fix concurrency issues with TLS 2025-05-08 11:45:00 +02:00
register_types.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
SCsub SCons: Add CPPEXTPATH for external includes 2025-04-02 07:29:08 -05:00
stream_peer_mbedtls.cpp Improve use of Ref.is_null/valid 2024-12-23 16:35:02 -05:00
stream_peer_mbedtls.h Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
tls_context_mbedtls.cpp [mbedTLS] Enable TLS 1.3 negotiation by default 2025-02-24 14:04:09 +01:00
tls_context_mbedtls.h Add and require GDSOFTCLASS for Object subclasses that want to cast but do not use GDCLASS. 2025-03-31 20:49:50 +02:00