update(mqtt config): Enforce strict parser mode by default - #3677
update(mqtt config): Enforce strict parser mode by default#3677Meggielqk wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the MQTT configuration documentation to reflect EMQX 6.3.0 behavior, where strict MQTT packet parsing/validation is enabled by default via mqtt.strict_mode, and explains how to disable it globally or per-zone for legacy clients.
Changes:
- Adds
strict_mode = trueto the basic MQTT configuration example and documents the newstrict_modeoption. - Introduces a new section describing what “strict MQTT packet validation” checks, plus expected disconnect/log/response behavior.
- Updates the introductory paragraphs to better frame the page around MQTT protocol behavior and validation.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| zh_CN/configuration/mqtt.md | Adds strict_mode documentation and a Chinese section explaining strict packet validation and per-zone disablement. |
| en_US/configuration/mqtt.md | Adds strict_mode documentation and an English section explaining strict packet validation and per-zone disablement. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| | `strict_mode` | Strict Mode | This sets whether to apply additional protocol compliance checks to incoming MQTT packets. Packets that fail these checks cause the client connection to be closed. | `true` | `true`, `false` | | ||
|
|
||
| ### Strict MQTT Packet Validation | ||
|
|
||
| Starting from EMQX 6.3.0, strict MQTT packet validation is enabled by default. With `strict_mode = true`, EMQX rejects malformed MQTT packets, including packets with: |
There was a problem hiding this comment.
The files under cfg-manual-docgen/configuration-manual-.md are legacy artifacts and are not used by the current published HOCON manual. The HOCON manual is generated from the EMQX schema dump. The generated v6.3.0 data in hocon/hocon-ee-v6.3.0-.json already sets mqtt.strict_mode to true, while this page explicitly states that the new default applies starting from EMQX 6.3.0. @copilot
emqx/emqx#17185