Roger A. Light
84e4ba2c1e
Send DISCONNECT with malformed-packet reason code on bad PUBLISHes.
2020-08-02 23:12:47 +01:00
Roger A. Light
b1e9377a20
Send DISCONNECT with malformed-packet reason code on bad SUBSCRIBEs.
2020-08-02 15:10:12 +01:00
Roger A. Light
8416b007ec
Send DISCONNECT with malformed-packet reason code on bad UNSUBSCRIBEs.
2020-08-02 14:22:40 +01:00
Roger A. Light
1f717873d6
Log protocol error message where appropriate from a bad UNSUBSCRIBE
...
Rather than the generic "socket error".
Related to #1765 .
2020-07-31 23:01:15 +01:00
Abilio Marques
d5aae3eca7
lazy init SSL
...
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2020-07-23 17:48:56 +02:00
Roger A. Light
0ac46c2d2a
core18 doesn't have libssl1.1
2020-07-22 20:36:29 +01:00
Roger A. Light
42ab1fe2d3
Upgrade snap to core18.
2020-07-22 15:13:40 +01:00
Simon Tate
1608151569
Fix bridge reconnect
...
In the mux_epoll__add_in function, no context->events was set. Previously this was set to match the ev.events (EPOLLIN). Adding this back in, keeps the code consistent to before it was refactored to split out epoll and poll functions, as well as being consistent with the other mux_epoll__ functions.
If this is not set, the connection is never fully established when the broker comes back up.
Fixes #1680 .
Signed-off-by: Simon Tate <simon.tate@bt.com>
2020-07-20 15:47:48 +01:00
Roger A. Light
2b1a22776b
Only call setvbuf on open files.
2020-07-19 21:59:28 +01:00
Roger A. Light
19d65ba200
Set ownership of docker files on startup.
2020-07-17 22:35:11 +01:00
Roger A. Light
3dd3ac4f0c
Path fix for travis.
2020-07-16 16:19:33 +01:00
Roger A. Light
34db6e77b4
cJSON make install
doesn't build, so build it first.
2020-07-16 12:11:08 +01:00
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
54f3b686dc
Fix "slow" file based logging by switching to line based buffering.
...
Closes #1689 . Closes #1741 . Thanks to Brett M. Gordon and tt92.
2020-07-15 22:28:19 +01:00
Roger A. Light
8234d24b1b
Fix websockets clients sometimes not being disconnected promptly.
...
Closes #1718 . Thanks to Luca Casonato.
2020-07-15 22:06:29 +01:00
Roger A. Light
d371b3c58b
Fix mosquitto_publish*()
no longer returning MOSQ_ERR_NO_CONN
.
...
This was always returning success when the client was not connected.
Closes #1725 . Thanks to BOTorioN.
2020-07-15 20:25:36 +01:00
Roger A. Light
b4e0dfa598
Fix autosave_interval
not being triggered by messages being delivered.
...
Closes #1726 . Thanks to nduhme.
2020-07-15 19:29:40 +01:00
Roger A. Light
4e0312c55f
Fix messages being queued for disconnected bridges
...
This occurred incorrectly when clean start was set to true.
Closes #1729 . Thanks to Andreyooo.
2020-07-15 17:08:00 +01:00
Roger A. Light
d9003bb858
Don't use mutex until it is initialised.
...
Coverity Scan 1430456.
2020-07-15 12:12:51 +01:00
Roger A. Light
e272f8fbca
mosquitto_pub: Close file on file too large.
...
This wasn't a problem because this error caused the program to
exit, so there was no real resource leak.
Coverity Scan 1430457.
2020-07-15 12:04:20 +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
cadcde52a4
Remove duplicate code.
...
Coverity Scan 1430458.
2020-07-15 12:00:29 +01:00
Roger A. Light
3a83bafe40
Github actions: Add workflow_dispatch to allow a manual trigger.
2020-07-15 11:26:23 +01:00
Roger A. Light
80bb31cf48
Github action for synchronising coverity scan branches
2020-07-15 11:10:10 +01:00
Roger A. Light
1d66d3e443
Fix bridge topic remapping when using "" as the topic.
...
Closes #1749 . Thanks to cieslarchristian.
2020-07-15 00:19:44 +01:00
Roger A. Light
5a56f066a8
Change systemd unit files to create /var/log/mosquitto
...
This happens before starting the broker.
Also don't quit with an error if opening the log file isn't possible.
Closes #821 .
2020-07-14 20:10:54 +01:00
Roger A. Light
abb31ffe8d
Fix broker refusing to start if only websockets listeners were defined.
...
Closes #1740 . Thanks to OkenKhuman.
2020-07-14 17:27:57 +01:00
Roger A. Light
873e580a00
Spelling/grammar fixes.
2020-07-14 16:44:33 +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
Sigmund Vik
5481575f8b
Fix FormatMessage warnings for Windows.
...
From the FormatMessage() Win32 API documentation: "The lpBuffer
parameter is a pointer to an LPTSTR; you must cast the pointer
to an LPTSTR (for example, (LPTSTR)&lpBuffer)."
https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-formatmessage#parameters
This commit fixes warnings like these:
warning C4047: 'function': 'LPSTR' differs in levels of indirection from 'char **'
warning C4024: 'FormatMessageA': different types for formal and actual parameter 5
Signed-off-by: Sigmund Vik <sigmund_vik@yahoo.com>
2020-07-12 22:34:20 +01:00
Sigmund Vik
a75d574870
Fix sys_tree macro stubs with no arguments.
...
This fixes Visual Studio compiler warnings like this one:
"warning C4003: not enough arguments for function-like
macro invocation 'G_MSGS_DROPPED_INC'"
Signed-off-by: Sigmund Vik <sigmund_vik@yahoo.com>
2020-07-12 22:26:00 +01:00
Roger A. Light
b7911f191b
Add all docs to documentation page.
2020-07-12 09:22:49 +01:00
Sigmund Vik
20972a2819
Add broker ready message.
...
Before this commit there was no good way to detect that the
Mosquitto broker was done with its startup phase on systems
without systemd.
On such systems it was tricky to e.g. start the broker from
a test where ports are dynamically assigned and one have to
deal with potential port conflicts. Without a way to know
that the broker is done with its startup phase, there was no
way to know if the broker was able to acquire the port (for
both IPv4 and IPv6) without waiting for some unknown period
of time (when many tests are run in parallel a single process
might be starved for resources).
With this new broker ready message it is easy for the parent
process to monitor the broker output and figure out when the
port was successfully acquired.
Signed-off-by: Sigmund Vik <sigmund_vik@yahoo.com>
2020-07-10 22:48:58 +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 A. Light
63f0564354
Add basic snap documentation.
2020-07-06 18:58:07 +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
Roger A. Light
c8964228e3
Improved documentation around connect callback return codes.
...
Close #1730 . Thanks to John Laird.
2020-06-22 21:45:50 +01:00
Jasper Lievisse Adriaanse
4ef7ea6244
extend ifdef guard to fix compilation on OpenBSD
...
otherwise in6_addr, AF_INET and AF_INET6 end up being undefined
Signed-off-by: Jasper Lievisse Adriaanse <jasper@humppa.nl>
2020-06-17 15:54:24 +01:00