Add a refcount around mosquitto_lib_init and mosquitto_lib_cleanup so
that multiple calls to init/cleanup don't trigger memory leaks or
double-frees.
Signed-off-by: Martin Kelly <mkelly@xevo.com>
This adds the ability to separating bridge clean session settings between
the local and remote endpoints. Some broker implmentations refuse to allow
non-clean sessions, as they don't support storing messages to be sent to
the connecting broker. However, this doesn't mean that the local
broker can't be queueing messages to send _out_ to the remote broker.
This PR adds a new bridge connection setting, local_cleansession, that
allows controlling this split. Naming is chosen to be local_ in keeping
with the other local_ settings for bridges.
A test for the six cases of queued/not queued messages in both
directions is added, but v5 testing is currently disabled. The changes
to support the split are ~independent of protocol version.
Signed-off-by: Karl Palsson <karlp@etactica.com>
06-bridge-b2br-disconnect-qos1 and
06-bridge-br2b-disconnect-qos1 have ~identical header code.
unify the identical bits to make it easier to visually see this.
Signed-off-by: Karl Palsson <karlp@etactica.com>
This just gets them all listed, explaining the available apis where they
could be used is left as further work.
Signed-off-by: Karl Palsson <karlp@etactica.com>
Uses the NaturalDocs 1.5 compatible style. (Forward compatible with v2)
Uses > for short snippets and the tagged style for longer snippets.
Signed-off-by: Karl Palsson <karlp@etactica.com>
This change improves the option list rendering by correctly triggering
naturaldocs detection of the lists. No change other than line breaks
and whitespace.
Signed-off-by: Karl Palsson <karlp@etactica.com>
_string_option was grouped with the callbacks instead of _int_option and
_void_option. Grouped them all together neatly.
Signed-off-by: Karl Palsson <karlp@etactica.com>