Browse Source

fixed nullpointer exception in server

release/3.x.x
JanEggers 7 years ago
parent
commit
783ee4328a
2 changed files with 17 additions and 0 deletions
  1. +9
    -0
      Frameworks/MQTTnet.NetFramework/Implementations/MqttTcpChannel.cs
  2. +8
    -0
      Frameworks/MQTTnet.NetStandard/Implementations/MqttTcpChannel.cs

+ 9
- 0
Frameworks/MQTTnet.NetFramework/Implementations/MqttTcpChannel.cs View File

@@ -17,14 +17,23 @@ namespace MQTTnet.Implementations
private Socket _socket; private Socket _socket;
private SslStream _sslStream; private SslStream _sslStream;


/// <summary>
/// called on client sockets are created in connect
/// </summary>
public MqttTcpChannel() public MqttTcpChannel()
{ {
} }


/// <summary>
/// called on server, sockets are passed in
/// connect will not be called
/// </summary>
public MqttTcpChannel(Socket socket, SslStream sslStream) public MqttTcpChannel(Socket socket, SslStream sslStream)
{ {
_socket = socket ?? throw new ArgumentNullException(nameof(socket)); _socket = socket ?? throw new ArgumentNullException(nameof(socket));
_sslStream = sslStream; _sslStream = sslStream;
_dataStream = (Stream)sslStream ?? new NetworkStream(socket);
} }


public async Task ConnectAsync(MqttClientOptions options) public async Task ConnectAsync(MqttClientOptions options)


+ 8
- 0
Frameworks/MQTTnet.NetStandard/Implementations/MqttTcpChannel.cs View File

@@ -17,14 +17,22 @@ namespace MQTTnet.Implementations
private Socket _socket; private Socket _socket;
private SslStream _sslStream; private SslStream _sslStream;


/// <summary>
/// called on client sockets are created in connect
/// </summary>
public MqttTcpChannel() public MqttTcpChannel()
{ {
} }


/// <summary>
/// called on server, sockets are passed in
/// connect will not be called
/// </summary>
public MqttTcpChannel(Socket socket, SslStream sslStream) public MqttTcpChannel(Socket socket, SslStream sslStream)
{ {
_socket = socket ?? throw new ArgumentNullException(nameof(socket)); _socket = socket ?? throw new ArgumentNullException(nameof(socket));
_sslStream = sslStream; _sslStream = sslStream;
_dataStream = (Stream)sslStream ?? new NetworkStream(socket);
} }


public async Task ConnectAsync(MqttClientOptions options) public async Task ConnectAsync(MqttClientOptions options)


Loading…
Cancel
Save