Browse Source

Fix TLS certificate loading.

release/3.x.x
Christian Kratky 6 years ago
parent
commit
6bcfa436ea
2 changed files with 6 additions and 19 deletions
  1. +0
    -5
      Frameworks/MQTTnet.NetStandard/Adapter/MqttChannelAdapter.cs
  2. +6
    -14
      Frameworks/MQTTnet.NetStandard/Implementations/MqttTcpServerAdapter.cs

+ 0
- 5
Frameworks/MQTTnet.NetStandard/Adapter/MqttChannelAdapter.cs View File

@@ -65,11 +65,6 @@ namespace MQTTnet.Adapter

foreach (var packet in packets)
{
if (packet == null)
{
continue;
}

await SendPacketAsync(timeout, cancellationToken, packet).ConfigureAwait(false);
}
}


+ 6
- 14
Frameworks/MQTTnet.NetStandard/Implementations/MqttTcpServerAdapter.cs View File

@@ -15,9 +15,9 @@ namespace MQTTnet.Implementations
{
private readonly List<MqttTcpServerListener> _listeners = new List<MqttTcpServerListener>();
private readonly IMqttNetChildLogger _logger;
private CancellationTokenSource _cancellationTokenSource;
public MqttTcpServerAdapter(IMqttNetChildLogger logger)
{
if (logger == null) throw new ArgumentNullException(nameof(logger));
@@ -35,7 +35,7 @@ namespace MQTTnet.Implementations

if (options.DefaultEndpointOptions.IsEnabled)
{
RegisterListeners(options.DefaultEndpointOptions);
RegisterListeners(options.DefaultEndpointOptions, null);
}

if (options.TlsEndpointOptions.IsEnabled)
@@ -51,7 +51,7 @@ namespace MQTTnet.Implementations
throw new InvalidOperationException("The certificate for TLS encryption must contain the private key.");
}

RegisterListeners(options.TlsEndpointOptions);
RegisterListeners(options.TlsEndpointOptions, tlsCertificate);
}

return Task.FromResult(0);
@@ -77,16 +77,8 @@ namespace MQTTnet.Implementations
_listeners.Clear();
}

private void RegisterListeners(MqttServerTcpEndpointBaseOptions options)
private void RegisterListeners(MqttServerTcpEndpointBaseOptions options, X509Certificate2 tlsCertificate)
{
var tlsOptions = options as MqttServerTlsTcpEndpointOptions;

X509Certificate2 tlsCertificate = null;
if (tlsOptions != null)
{
tlsCertificate = new X509Certificate2(tlsOptions.Certificate);
}

var listenerV4 = new MqttTcpServerListener(
AddressFamily.InterNetwork,
options,
@@ -97,7 +89,7 @@ namespace MQTTnet.Implementations
listenerV4.ClientAccepted += OnClientAccepted;
listenerV4.Start();
_listeners.Add(listenerV4);
var listenerV6 = new MqttTcpServerListener(
AddressFamily.InterNetworkV6,
options,


Loading…
Cancel
Save