Rebex Syslog

Syslog client/server library for .NET

Download 30-day free trial Buy from $199
More .NET components

Release notes for Rebex Syslog for .NET


R6.1 #

(build 8044 from 2022-01-08)

Maintenance release

This is a maintenance release that brings several enhancements and resolves some issues.

Detailed list of changes:

  • All: Fixed compatibility of Rebex binaries for .NET Framework 4.0 with ASP.NET 4.5 or higher.
  • Syslog: Improved Socket error handling and reporting.
  • TLS Core: Optimized receive operation in TLS 1.3.
  • TLS Core: Slight optimizations in TLS 1.3 on modern platforms.
  • Cryptography: Caching of CNG algorithm provider handles.
  • Cryptography: Fixed Certificate.GetSignatureHashAlgorithm() for certificates signed by Ed25519 authorities.
  • Cryptography: Fixed unmanaged resource leak in CertificateStore.
  • Cryptography: Optimized symmetric branch of Windows CNG (BCrypt) interop layer.

R6.0 #

(build 8000 from 2021-11-25)

Support for .NET 6.0!

This release adds a new set of binaries targeting the final version of .NET 6.0. It supports all .NET 6.0 platforms:

  • Windows (x64, x86, ARM64)
  • Linux (x64, ARM32, ARM64)
  • macOS (x64)

Please note that support for Android and iOS/tvOS in .NET 6.0 is still in preview mode. We will fully support these platforms as soon as the corresponding .NET 6.0 update is published.

Detailed list of changes:

  • All: Added a new set of binaries targeting .NET 6.0.
  • All: Removed several obsolete and deprecated APIs.
  • All: Removed support for legacy ISerializable interface from binaries for .NET Standard.
  • SSH: Added support for SSH key algorithms based on ECDSA X.509 certificates (RFC 6187).

R5.7 #

(build 7999 from 2021-11-24)

Support for .NET 6.0 and Windows 11

Windows 11 is now a supported platform.

Rebex assemblies targeting .NET Standard 2.1 now support .NET 6.0.

Improved TLS 1.3 performance

We made a number of optimizations in the TLS 1.3 core, which increased speed and decreased CPU usage.

Detailed list of changes:

  • All: Added support for .NET 6.0 on Windows, Linux and macOS.
  • All: Added support for Windows 11.
  • SSH: Added support for PuTTY PPK3 format to SshPrivateKey.
  • SSH: Added support for 'x509v3-rsa2048-sha256' SSH key algorithm (RSA X.509 certificates, RFC 6187).
  • SSH: Added workaround for a server with broken SSH window size handling logic.
  • SSH: Fixed handling of oversized data packets from servers with broken window size logic.
  • TLS Core: Improved TLS 1.3 performance.
  • Cryptography: Added more values to X.509 RevocationReason enum.
  • Cryptography: Added support for private keys in PuTTY PPK3 format (uses Argon2 key derivation function).
  • Cryptography: Added workaround for Google's CRLs with non-constructed explicit ASN.1 nodes.

R5.6 #

(build 7970 from 2021-10-26)

Support for .NET 6.0 RC2

Rebex assemblies targeting .NET Standard 2.1 have been fully tested on .NET 6.0 RC2 and are suitable to be used in production on Microsoft's latest .NET platform ahead of the official release.

Maintenance release

This is a maintenance release with enhancements in the shared functionality.

Detailed list of changes:

  • All: Added support for .NET 6.0 RC2.
  • TLS Core: Fixed possible NullReferenceException in TLS 1.2 socket after it has been closed.
  • TLS Core: Improved handling of exceptions in TlsSocket.Send method.
  • Cryptography: Fixed handling of RSAParameters without DP/DQ in AsymmetricKeyAlgorithm and PrivateKeyInfo.
  • Cryptography: Fixed loading of encrypted keys with empty passwords in new OpenSSH format.
  • Cryptography: Small optimization in AVX2 implementation of ChaCha20.

R5.5 #

(build 7900 from 2021-08-17)

New binaries for .NET Core 3.1

We added a new set of binaries targeting .NET Core 3.1. We have already been supporting that platform since 2019 via .NET Standard 2.1. However, the new set of binaries utilizes .NET Core's hardware intrinsics API and features our fast ChaCha20/Poly1305 implementation that has been previously only available on .NET 5.0.

For an overview of available binaries and supported platforms, check out Rebex Support Lifecycle KB article.

Detailed list of changes:

  • All: Added 'netcoreapp3.1' binaries.
  • All: Fixed compatibility with UWP and .NET Native compiler.
  • Syslog: Added SyslogMessageReceivedEventArgs.Timestamp property (available for messages received by a server).

R5.4 #

(build 7888 from 2021-08-05)

Maintenance release

This release resolves several issues in the shared functionality.

Detailed list of changes:

  • Networking: Fixed casing in 'Basic' HTTP proxy authorization header.
  • TLS Core: Fixed parsing of TLS 1.3 Certificate handshake message spanning multiple records.
  • Cryptography: Fixed Certificate.FriendlyName setter in .NET 5.0 on non-Windows platforms.

R5.3 #

(build 7840 from 2021-06-18)

Maintenance release

This is a maintenance release with enhancements in the shared functionality.

Detailed list of changes:

  • SSH: Fixed race condition in OpenSSH-style compression startup code (occasionally caused connection failures during authentication with SSH compression was enabled).
  • TLS Core: Added SslSettings.SetPreferredSuites/GetPreferredSuites methods to make it possible to specify client-side TLS cipher preference.
  • TLS Core: Improved logging when remote party does not support TLS 1.3.
  • TLS Core: Optimized TlsSocket.Negotiate method when TLS 1.3 is enabled but not supported by the remote side.
  • TLS Core: Prevented 'unobserved' exceptions in task-based TLS 1.2 core.
  • Cryptography: Added support for private keys using PBKDF2 with HMAC/SHA-2 (RFC 8018 / PKCS #5 v2.1).
  • Cryptography: Fixed detection of FIPS-only systems on .NET Framework 4.8.
  • Cryptography: Optimized creation of algorithm objects in CNG layer.

R5.2 #

(build 7800 from 2021-05-09)

New component: Rebex Syslog

Rebex Syslog is syslog client and server library for .NET. It supports UDP, TCP and TLS, and is compatible with third-party syslog clients and servers. It supports TLS 1.3, TLS 1.2 and earlier versions on all mainstream platforms including .NET Framework 3.5 on Windows 7. SHA-2, SNI, AES/GCM, ChaCha20/Poly1305 and other modern TLS features are supported as well.

The new library is available as a standalone package or as a part of Rebex Total Pack.

Detailed list of changes:

  • Syslog: Initial release of Rebex Syslog component.
  • Networking: Added support for SOCKS5 servers that respond with domain name.
  • SSH: Optimized usage of ChaCha20/Poly1305 in SSH.
  • Cryptography: Added ChaCha20Poly1305 class that implements ChaCha20/Poly1305 with an API that resembles .NET's AesGcm class.
  • Cryptography: Added support for loading of ECDSA certificates from PFX/P12 files in .NET 5.0 and .NET Standard 2.1 on Linux and macOS.
  • Cryptography: Added support for saving to PFX/P12 files for certificates with temporarily associated private keys in .NET 5.0 and .NET Standard 2.1 on Linux and macOS.
  • Cryptography: AVX2 implementation of ChaCha20 releases old pre-generated keystream immediately after reinitialization.
  • Cryptography: Clearing output data in AesGcm class when authentication tag is invalid.
  • Cryptography: Fixed parsing of Cryptographic Message Syntax envelopes with unsupported OIDs.
  • Cryptography: Improved ChaCha20/Poly1305 performance on .NET 3.5-4.6 and .NET Standard 2.x.
  • Cryptography: Improved performance of AES/CTR ciphers (used in SSH).
  • Common: Improved error handling when raising events via synchronization context.