示例#1
0
        internal override void Deserialize(PacketReader reader, MqttProtocolVersion protocolVersion)
        {
            if (protocolVersion == MqttProtocolVersion.V3_1_1)
            {
                if ((reader.FixedHeaderFirstByte & Packet.PacketFlagsBitMask) != Packet.ZeroedHeaderFlagBits)
                {
                    throw new MqttProtocolException("Connack packet received with invalid header flags");
                }
            }

            if (reader.RemainingLength != 2)
            {
                throw new MqttProtocolException("Connack packet received with invalid remaining length");
            }

            this.SessionPresent = (reader.ReadByte() & SessionPresentFlag) > 0;
            this.ReturnCode     = (ConnackReturnCode)reader.ReadByte();
        }
示例#2
0
 public MqttConnectException(string message, ConnackReturnCode code) : base(message)
 {
     this.ReturnCode = code;
 }