Roger A. Light
86e7eed8b7
Fix minor leak when cleaning a bridge on exit.
2020-07-16 12:03:39 +01:00
Roger A. Light
0edb3e49e7
Remove debug mode
2020-07-16 11:23:25 +01:00
Roger A. Light
4f9a1a53ce
Fix incorrect store ref count usage.
2020-07-16 11:18:04 +01:00
Roger A. Light
b5be4fb4af
Fix test
2020-07-16 09:36:42 +01:00
Roger A. Light
f846711ea2
mosquitto_pub now sends 0 length files without an error when using -f
.
2020-07-15 12:03:15 +01:00
Roger A. Light
f46187d5e5
Add mosquitto_client_protocol_version()
function.
...
This can be used by plugins to determine which version of MQTT a client
has connected with.
2020-07-12 23:01:20 +01:00
Roger A. Light
abc191ad00
db_dump: Fix mosquitto_msg_store usage.
2020-07-10 22:00:11 +01:00
Roger A. Light
a07edaa4a0
db_dump: Print error when file not accessible.
2020-07-10 21:46:44 +01:00
Roger A. Light
4379f78cec
Travis: Manual install of cJSON .
2020-07-10 21:30:30 +01:00
Roger A. Light
5b4b079105
mosquitto_pub: Print reason string on publish error, if it exists.
2020-07-10 17:10:23 +01:00
Roger A. Light
6deb417804
Simplify db__message_store() interface.
2020-07-10 16:09:33 +01:00
Roger A. Light
3e595d557e
Add db__msg_store_free() for freeing stored messages.
2020-07-10 13:31:37 +01:00
Roger A. Light
e3e8dc4ea4
Allow send__pub{ack,rec,rel,comp} to send properties.
2020-07-10 12:29:53 +01:00
Roger Light
318dead6bf
Function to allow plugins to publish messages.
2020-06-30 10:31:34 +01:00
Roger A. Light
e54bac2a54
No need to pass separate username/password here.
2020-06-30 10:21:43 +01:00
Roger A. Light
73cc271d37
Allow auth plugin to see all logins, unless accepted by password file.
2020-06-30 10:07:54 +01:00
Roger A. Light
2e32634a95
DLT logging is now configurable at runtime with log_dest dlt
.
...
Closes #1735 . Thanks to Brian Orpin.
2020-06-30 00:51:57 +01:00
Martin Kelly
8d54aaef89
add a refcount to library init/cleanup
...
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>
2020-05-20 11:20:39 +01:00
Abilio Marques
22ffefe7f6
remove cjson stranded reference when building WITH_CJSON=no
...
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2020-05-20 11:17:13 +01:00
Roger A. Light
c766bdfeb0
Display time out message only on SIGALRM.
2020-05-06 22:23:06 +01:00
Roger A. Light
b726e2f1ec
mosquitto_sub %j and %J timestamps are now in a ISO 8601 compatible format.
2020-05-06 22:21:21 +01:00
Roger A. Light
e755827f4f
Free outgoing client messages even for non-bridges.
2020-05-05 15:37:04 +01:00
Roger A. Light
ee7d1981ff
Merge branch 'rfc-bridge-local-clean' of git://github.com/etactica/mosquitto into etactica-rfc-bridge-local-clean
2020-05-05 14:33:02 +01:00
Roger A. Light
d3247a830a
Fix memory leak when connecting clients are rejected.
2020-05-05 14:31:13 +01:00
Roger A. Light
bb0e5bb7d3
Add missing header.
2020-05-05 14:20:56 +01:00
Roger A. Light
c5d6f32341
Be more tolerant when loading persistence files.
2020-05-01 21:51:07 +01:00
Roger A. Light
ff2b111cb3
Fix minor memory leak when load bridge prefixes.
2020-04-30 17:06:51 +01:00
Roger A. Light
4392320bc3
Fix memory leak when cleaning all shared subs.
2020-04-30 16:58:46 +01:00
Roger A. Light
ea47f6b0dc
Clearer client disconnection message.
2020-04-28 10:42:49 +01:00
Roger A. Light
cef9d891ae
Tidy up main().
2020-04-08 11:34:31 +01:00
Roger A. Light
c72dd39f92
Allow MQTT v5.0 outgoing bridges to fall back to MQTT v3.1.1
...
This applies if connecting to a v3.x only broker.
2020-04-02 10:26:36 +01:00
Roger A. Light
f0deb9a5a1
CMake: Make building clients, broker and C++ library optional.
...
Issue #1641 .
2020-03-27 21:57:06 +00:00
Roger A. Light
76248320d7
Travis: Use bionic distro.
2020-03-27 00:07:48 +00:00
Roger Light
986bf89f47
Prototype separate poll/epoll files.
2020-03-26 10:35:02 +00:00
Roger A. Light
c3e824ee22
Remove duplicate strlen() calls.
2020-03-26 09:32:01 +00:00
Roger A. Light
95faff36aa
Fix ref counting of retained messages.
2020-03-26 09:11:50 +00:00
Roger A. Light
0b7b7389b0
Remove duplicate UTF-8 check
...
All strings are already validated in packet__read_string().
2020-03-26 09:09:11 +00:00
Karl Palsson
07d73c7e3a
bridge: support bridge local clean session
...
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>
2020-03-20 12:35:06 +00:00
Karl Palsson
1a93bab80a
mosq_test: add do_receive_send counterpart
...
Like do_send_receive() but aimed for mocking the other side.
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-20 10:47:17 +00:00
Karl Palsson
e700c1c523
mosq_test: print stderr from failure to start broker
...
Doesn't matter when the tests are running, but useful when you're
writing tests.
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-20 10:47:17 +00:00
Karl Palsson
3d45c3186c
test/broker: align identical code
...
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>
2020-03-20 10:47:11 +00:00
Karl Palsson
efb21fb09c
doc: lib clarify _topic_check functions
...
Removed some whitespace and copy paste errors.
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
8c16d7cd50
doc: add mqtt5 property options.
...
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>
2020-03-19 16:40:48 +00:00
Karl Palsson
1b4b6f4a2c
doc: lib: properly flag code samples for formatting
...
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>
2020-03-19 16:40:48 +00:00
Karl Palsson
fd83d2274f
doc: lib: avoid unintended code formatting
...
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
1331399228
doc: lib: specifically document mqtt5_sub_options
...
This makes the documentation of the options available in
https://mosquitto.org/api/files/mosquitto-h.html#mosquitto_subscribe_v5
a lot cleaner. (and also _subscribe_multiple())
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
d46707fe02
doc: lib_vesion: correctly format return values
...
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
765f7343c2
doc: lib: _xxx_option() and opts_set() cleanup list syntax
...
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>
2020-03-19 16:40:48 +00:00
Karl Palsson
6c7ef15112
doc: lib: group all _option functions together.
...
_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>
2020-03-19 16:40:48 +00:00
Michael
4d658bd569
Fix compile error/warning
...
Signed-off-by: Michael Liu <michael.liu.point@gmail.com>
2020-03-12 12:13:26 +00:00