quartiq / minimq

Minimal no_std MQTT v5.0 client implementation
MIT License
143 stars 16 forks source link

Subscription options for ignoring own messages does not work #128

Closed ryan-summers closed 1 year ago

ryan-summers commented 1 year ago

Even if the subscription option for ignoring your own messages is specified, it appears that the device may still receive them.

ryan-summers commented 1 year ago

Upon further investigation, this doesn't appear to be the case. Minimq is properly using the no-local flag, but there is a weird behavior between "local" and "retained" messages that were unexpected.

jordens commented 1 year ago

It's the spec being at unclear here. What exactly "forwarding" is and what it isn't is undefined (e.g. in regards to sending "old" retained messages at subscription time) and whether "Retain Handling" (=0) trumps "No Local" (=1): apparently it does.