New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for MQTT 5 #1250
Add support for MQTT 5 #1250
Conversation
75f3190
to
498b212
Compare
!
Sounds like a reasonable idea. I see you have wrapped them around a cpp #if for conditional compilation - I don't think you need to necessarily do that, perhaps you can always compile and let the linker garbage collect those symbols. I'm not sure why the diff is showing up with all those file renames. |
Regarding the renames, I made some space for contiguous MQTT test numbering (02 through 07, though I see I missed The compiler was throwing errors for unused functions, so I had to wrap some of them in |
Hmmm I this this will happen for unused static functions. But if you were to move them to a separate file and make them non-static it would go away. |
95c5a71
to
63ea837
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall great work, just some bureaucracy I'm afraid Alex...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's all fine, just need to get the macro/type/function names prefixed with the module name properly
This PR adds support for MQTT 5.0 (protocol level 5) as summarised here.
Most of these new features are implemented via Properties. A large part of this diff is comprised of code to handle the encoding and decoding of these properties. I was considering pulling out the property handling code to a separate set of files (
mqtt-prop.c/h
?)EDIT:
See here for how to print properties using the mosquitto client. You should get something like this (see the properties field):