@ -49,6 +49,7 @@ int handle__pubackcomp(struct mosquitto *mosq, const char *type)
assert(mosq);
rc = packet__read_uint16(&mosq->in_packet, &mid);
if(rc) return rc;
if(mid == 0) return MOSQ_ERR_PROTOCOL;
if(mosq->protocol == mosq_p_mqtt5){
rc = property__read_all(PUBACK, &mosq->in_packet, &properties);
@ -67,6 +67,10 @@ int handle__publish(struct mosquitto *mosq)
message__cleanup(&message);
return rc;
}
if(mid == 0){
return MOSQ_ERR_PROTOCOL;
message->msg.mid = (int)mid;
@ -44,6 +44,7 @@ int handle__pubrec(struct mosquitto *mosq)
rc = property__read_all(PUBREC, &mosq->in_packet, &properties);
@ -53,6 +53,7 @@ int handle__pubrel(struct mosquitto_db *db, struct mosquitto *mosq)
rc = property__read_all(PUBREL, &mosq->in_packet, &properties);
@ -49,6 +49,7 @@ int handle__suback(struct mosquitto *mosq)
#endif
rc = property__read_all(SUBACK, &mosq->in_packet, &properties);
@ -51,6 +51,7 @@ int handle__unsuback(struct mosquitto *mosq)
rc = property__read_all(UNSUBACK, &mosq->in_packet, &properties);
@ -131,6 +131,10 @@ int handle__publish(struct mosquitto_db *db, struct mosquitto *context)
mosquitto__free(topic);
return 1;
if(context->protocol == mosq_p_mqtt5){
@ -50,6 +50,7 @@ int handle__subscribe(struct mosquitto_db *db, struct mosquitto *context)
if(packet__read_uint16(&context->in_packet, &mid)) return 1;
rc = property__read_all(SUBSCRIBE, &context->in_packet, &properties);
@ -42,6 +42,7 @@ int handle__unsubscribe(struct mosquitto_db *db, struct mosquitto *context)
rc = property__read_all(UNSUBSCRIBE, &context->in_packet, &properties);