diff --git a/kmqtt-common/src/commonMain/kotlin/io/github/davidepianca98/mqtt/packets/mqttv5/MQTT5Connack.kt b/kmqtt-common/src/commonMain/kotlin/io/github/davidepianca98/mqtt/packets/mqttv5/MQTT5Connack.kt index b27e785db3ba1618db8949dae7357c67b2ea1f33..6ee2e81d845703a4fa43f6d6d3afdd5c21f4d80e 100644 --- a/kmqtt-common/src/commonMain/kotlin/io/github/davidepianca98/mqtt/packets/mqttv5/MQTT5Connack.kt +++ b/kmqtt-common/src/commonMain/kotlin/io/github/davidepianca98/mqtt/packets/mqttv5/MQTT5Connack.kt @@ -74,6 +74,11 @@ public class MQTT5Connack( ReasonCode.valueOf(inStream.readByte().toInt()) ?: throw MQTTException( ReasonCode.PROTOCOL_ERROR ) + + if (connectReasonCode !in validReasonCodes) throw MQTTException( + ReasonCode.PROTOCOL_ERROR + ) + val properties = inStream.deserializeProperties(validProperties) return MQTT5Connack(