sgcWebSockets 4.5.4

· Versiones

RAD Studio 

A continuación se muestra la lista completa de nuevas funciones y correcciones incluidas en sgcWebSockets 4.5.4:

[+] : Mejorada la propiedad TLSOptions.Version: ahora, si el valor es tlsUndefined (el valor por defecto), el cliente intentará negociar todas las versiones TLS posibles (de TLS 1.3 a TLS 1.0); antes de este cambio se seleccionaba TLS 1.0.
[+] : Mejorado el cliente Amazon AWS IoT, nueva propiedad SignatureV4.SessionToken que debe rellenarse al usar credenciales de seguridad temporales.
[+] : Mejorado HTTPUploadFiles: ahora hay 2 nuevos eventos: OnHTTPUploadBeforeSaveFile y OnHTTPUploadAfterSaveFile, que permite conocer o modificar el nombre del archivo recibido.
[+] : Mejorada la configuración de openSSL, si openSSL_Options.LibPath = oslpCustomPath, la ubicación de las bibliotecas openSSL se establecerá en el valor de OpenSSL_Options.LibPathCustom (gracias a Matteo por la sugerencia).
[+] : Mejorada la configuración de openSSL, nueva propiedad UnixSymLinks permite desactivar la carga de enlaces simbólicos en Unix. Corrige el error "Clients should not load the unversioned libcrypto dylib as it does not have a stable ABI." en macOS Monterey.
[+] : Mejorado el mensaje de error de openSSL "cannot load opensssl", ahora muestra la ruta, los métodos no disponibles y la versión. Solo disponible en la edición Enterprise.
[+] : Mejorada la API Socket.IO, añadido soporte para la última API 4.
[+] : Añadido soporte para el método Send Signal de Cryptorobotics.

[*] : Corregido bug en los servidores Indy; en algunos casos, las conexiones HTTP medio desconectadas podían consumir toda la CPU. (gracias a Moacir por avisarme).
[*] : Corregido bug cuando PerMessage_Deflate, al manejar un mensaje Z_BUF_ERROR.
[*] : Corregido bug cuando PerMessage_Deflate; si se enviaba una cadena vacía o un memory stream, se generaba un error.
[*] : Corregido bug cuando PerMessage_Deflate; si se producía un error interno al inflar o desinflar, el mensaje de error no se pasaba a la excepción.
[*] : Corregido bug cuando PerMessage_Deflate; al inflar un stream, si el buffer no era lo suficientemente grande, el stream no se comprimía por completo.
[*] : Corregido bug en TsgcWebSocketClient usando el protocolo TCP plano y TLS 1.3, la conexión bloqueaba el hilo durante varios segundos.
[*] : Corregido bug cuando la propiedad HTTPUploadFiles.RemoveBoundaries estaba activada; el nombre de archivo no se extraía en versiones antiguas de Delphi.
[*] : Corregido bug cuando la propiedad HTTPUploadFiles.RemoveBoundaries estaba activada; si el nombre de archivo contenía espacios, no se extraía por completo.
[*] : Corregido bug al compilar TsgcWebSocketClient_WinHTTP en C++ Builder, error de ambigüedad con la unidad Wininet (HINTERNET, INTERNET_PORT).
[*] : Corregido bug cliente MQTT al leer/escribir valores VarInteger.
[*] : Corregido bug cliente MQTT al publicar un mensaje con PublishProperties, siempre se enviaba la propiedad TopicAlias = 1.

[/] : La propiedad TsgcWebSocketClient.Active ahora devuelve si la conexión interna está asignada o no. Antes, llamaba a la función Connected del cliente TCP.

.NET 

A continuación se muestra la lista completa de nuevas funciones y correcciones incluidas en sgcWebSockets .NET 4.5.4:

[+] : Añadido soporte para macOS de 64 bits.
[+] : Añadido soporte para paquetes NuGet.
[+] : Mejorada la propiedad TLSOptions.Version: ahora, si el valor es tlsUndefined (el valor por defecto), el cliente intentará negociar todas las versiones TLS posibles (de TLS 1.3 a TLS 1.0); antes de este cambio se seleccionaba TLS 1.0.
[+] : Mejorado HTTPUploadFiles: ahora hay 2 nuevos eventos: OnHTTPUploadBeforeSaveFile y OnHTTPUploadAfterSaveFile, que permite conocer o modificar el nombre del archivo recibido.
[+] : Mejorada la configuración de openSSL, si openSSL_Options.LibPath = oslpCustomPath, la ubicación de las bibliotecas openSSL se establecerá en el valor de OpenSSL_Options.LibPathCustom (gracias a Matteo por la sugerencia).
[+] : Mejorada la configuración de openSSL, nueva propiedad UnixSymLinks permite desactivar la carga de enlaces simbólicos en Unix. Corrige el error "Clients should not load the unversioned libcrypto dylib as it does not have a stable ABI." en macOS Monterey.
[+] : Mejorado el mensaje de error de openSSL "cannot load opensssl", ahora muestra la ruta, los métodos no disponibles y la versión.
[+] : Mejorada la API Socket.IO, añadido soporte para la última API 4.

[*] : Corregido bug en los servidores Indy; en algunos casos, las conexiones HTTP medio desconectadas podían consumir toda la CPU. (gracias a Moacir por avisarme).
[*] : Corregido bug cuando PerMessage_Deflate, al manejar un mensaje Z_BUF_ERROR.
[*] : Corregido bug cuando PerMessage_Deflate; si se enviaba una cadena vacía o un memory stream, se generaba un error.
[*] : Corregido bug cuando PerMessage_Deflate; si se producía un error interno al inflar o desinflar, el mensaje de error no se pasaba a la excepción.
[*] : Corregido bug cuando PerMessage_Deflate; al inflar un stream, si el buffer no era lo suficientemente grande, el stream no se comprimía por completo.
[*] : Corregido bug en TsgcWebSocketClient usando el protocolo TCP plano y TLS 1.3, la conexión bloqueaba el hilo durante varios segundos.
[*] : Corregido bug cuando la propiedad HTTPUploadFiles.RemoveBoundaries estaba activada; el nombre de archivo no se extraía en versiones antiguas de Delphi.
[*] : Corregido bug cuando la propiedad HTTPUploadFiles.RemoveBoundaries estaba activada; si el nombre de archivo contenía espacios, no se extraía por completo.
[*] : Corregido bug cliente MQTT al leer/escribir valores VarInteger.
[*] : Corregido bug cliente MQTT al publicar un mensaje con PublishProperties, siempre se enviaba la propiedad TopicAlias = 1.

[/] : La propiedad TsgcWebSocketClient.Active ahora devuelve si la conexión interna está asignada o no. Antes, llamaba a la función Connected del cliente TCP.