Commit Graph

778 Commits

Author SHA1 Message Date
Roger A. Light
9b25dd3b0d libressl build fixes.
Closes #2198. Thanks to Theo Buehler.
2021-08-24 13:53:03 +01:00
Roger A. Light
0d1837ebe3 Deconfigure thread mode when the loop thread ends.
Threaded mode is deconfigured when the mosquitto_loop_start() thread ends,
which allows mosquitto_loop_start() to be called again.

Closes #2242. Thanks to Timo Lange.
2021-08-24 11:51:38 +01:00
Roger Light
ba2ca33671 Strict protocol compliance fixes, and extensive test suite. 2021-08-23 23:19:28 +01:00
Roger Light
723b5d7081 Fix listener mount_point not being removed on outgoing messages.
Closes #2244. Thanks to alflexRH.
2021-08-22 08:23:13 +01:00
Roger Light
6608e852a1 Fix broker not quiting if password_file is specified as a directory.
Closes #2241. Thanks to Bryan Pearson.
2021-08-21 22:45:39 +01:00
Roger Light
526b8430e2 Fix for #2283.
Closes #2283. Thanks to Heath Raftery.
2021-08-21 20:14:51 +01:00
Roger Light
c01ae67af7 Fix openssl not being linked to dynamic security plugin.
Closes #2277. Thanks to LeSuisse.
2021-08-21 09:45:26 +01:00
Roger Light
342aa0ad1a Fix installation using WITH_TLS=no.
Closes #2281. Thanks to Matt Turner.
2021-08-20 23:49:59 +01:00
Roger Light
93b2232bb9 Apply max_keepalive to MQTT v3.1.1 and v3.1 clients. 2021-08-20 23:27:14 +01:00
Roger A. Light
ea371564e7 Disable TLS 1.3 when using TLS-PSK, because it isn't correctly config'd. 2021-08-19 17:26:04 +01:00
Roger A. Light
0143db71a1 Fix TLS certs and PSK not being able to be config'd at the same time. 2021-08-19 17:26:04 +01:00
Roger A. Light
a37c8e65d2 TLS-PSK mismatch fix.
Produce an error if a TLS-PSK client tries to connect to a broker
that is not configured with TLS-PSK.
2021-08-19 17:26:04 +01:00
Roger A. Light
79542158f4 Fix max_connections option not being correctly counted. 2021-08-17 13:10:18 +01:00
Roger A. Light
4e146b7b53 Fix possible out of bounds memory reads when reading configuration.
This would happen with a corrupt/crafted configuration file. Unless your
configuration file is writable by untrusted users this is not a risk.

Closes #567213. Thanks to Roland Sako.
2021-07-22 16:43:06 +01:00
Roger A. Light
6028d0e33e mosquitto_sub and mosquitto_rr now open stdout in binary mode on Windows
This is so binary payloads are not modified when printing.

Thanks to Steve Mullock.
2021-06-09 21:16:57 +01:00
Roger A. Light
f68c052c79 Merge branch 'fixes' 2021-06-09 13:22:56 +01:00
Roger A. Light
99d7299b24 Fix qos0 messages not being queued when queue_qos0_message enabled.
Closes #2224. Thanks to Luigi Caiffa.
2021-06-09 13:21:27 +01:00
Roger A. Light
42163634c7 Fix leak on crafted MQTT v5 CONNECT.
If a MQTT v5 client connects with a crafted CONNECT packet a memory leak
will occur.

Thanks to Kathrin Kleinhammer.
2021-06-08 22:26:09 +01:00
Roger A. Light
238b68686a Fix bridge pollfd corruption on Windows.
Closes #2173. Thanks to Niclas Lindgren.
2021-06-08 13:29:29 +01:00
Roger A. Light
104b94db57 Fix non-reachable bridge blocking the broker on Windows.
Closes #2172. Thanks to Niclas Lindgren.
2021-06-08 12:07:24 +01:00
Roger A. Light
16fb0025a7 Improve QoS 0 outgoing packet queueing. 2021-05-18 16:53:45 +01:00
Roger Light
880df7360d Fix bridge not reconnectng if the first reconnection attempt fails.
Closes #2207. Thanks to Abilio Marques.
2021-05-17 00:49:44 +01:00
Roger Light
07399c2f3c Fix mosquitto_pub -l quitting if broker unavailable.
This could occur when a message publication is attempted when the broker
is temporarily unavailable.

Closes #2187. Thanks to JsBergbau.
2021-05-08 23:07:02 +01:00
Roger Light
d5ecd9f5aa Update CVE information. 2021-04-10 08:28:41 +01:00
Roger Light
c418b57d0f Fix possible crash having just upgraded from 1.6.
Happens if `per_listener_settings true` is set, and a SIGHUP is sent to
the broker before a client has reconnected to the broker.

Closes #2167. Thanks to momoskitto.
2021-04-08 23:29:46 +01:00
Roger A. Light
ec54bce037 Fix mosquitto_sub pipe close detection.
If sending mosquitto_sub output to a pipe, mosquitto_sub will now detect
that the pipe has closed and disconnect.

Closes #2164. Thanks to Frantisek Fuka.
2021-04-06 23:01:48 +01:00
Roger A. Light
eead0d2943 Fix build on Solaris non-sparc.
Closes #2136. Thanks to chuckunix.
2021-04-03 11:15:13 +01:00
Roger A. Light
6a4a547892 Fix segfault on client sending malformed CONNACk.
CVE-xxxx-xxxx: If an authenticated client connected with MQTT v5 sent a
malformed CONNACK message to the broker a NULL pointer dereference occurred,
most likely resulting in a segfault. This will be updated with the CVE
number when it is assigned.
Affects versions 2.0.0 to 2.0.9 inclusive.

Closes #2163. Thanks to Bryan Pearson.
2021-04-03 11:14:27 +01:00
Roger Light
6ebbb4d654 Fix possible socket leak.
This would occur if a client was using `mosquitto_loop_start()`, then if
the connection failed due to the remote server being inaccessible they
called `mosquitto_loop_stop(, true)` and recreated the mosquitto object.

See: https://www.eclipse.org/forums/index.php?t=rview&goto=1839865#msg_1839865
2021-04-02 11:03:01 +01:00
Roger Light
117e59b7cf Fix CMake cross compile builds not finding opensslconf.h.
Closes #2160. Thanks to Ozaq.
2021-04-01 21:53:13 +01:00
Roger A. Light
7d214a445d Fix TLS-PSK mode not working with port 8883.
Closes #2152. Thanks to jetpax.
2021-03-26 11:06:57 +00:00
Abilio Marques
91f34e084f fix duplication of messages during connect
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2021-03-22 07:59:37 +01:00
Roger Light
2de8c15bc9 Minor build fixes. 2021-03-21 09:18:43 +00:00
Roger Light
a6bb8d3611 Don't over write new receive-maximum if a v5 client connects.
This is for when it takes over an old session.

Closes #2134. Thanks to Frantisek Fuka.
2021-03-14 22:12:10 +00:00
Roger Light
9faf89be8d Set receive-maximum to not exceed the -C message count.
This is for mosquitto_sub and mosquitto_rr, to avoid potentially lost
messages.

Closes #2134. Thanks to Frantisek Fuka.
2021-03-14 19:24:56 +00:00
Roger A. Light
f8838243fb Fix connections retrying very rapidly in some situations.
Thanks to Abilio Marques.
2021-03-11 21:04:51 +00:00
Roger A. Light
891be8c2fe Fix max_keepalive option not applying to keepalive=0.
Closes #2117. Thanks to David Nadlinger.
2021-03-11 19:58:47 +00:00
Roger A. Light
f4d088b6d0 Improve logging of pull request.
Improve handling of invalid combinations of listener address and bind
interface configurations. Closes #2081.
2021-03-11 15:09:38 +00:00
Roger A. Light
88d2c74ab2 Fix bridge backoff calculation. 2021-03-11 15:02:31 +00:00
Roger A. Light
b7a08d5c40 Fix TLS bridge/lib incorrectly connecting on invalid CA file.
Closes #2130. Thanks to becz.
2021-03-11 12:45:04 +00:00
Roger Light
ace2aa764e Fix cmake epoll detection. 2021-03-08 23:57:04 +00:00
Roger A. Light
e401def06d Fix QoS 0 messages not being delivered when max_queued_bytes was configured.
Closes #2123. Thanks to quackgizmo.
2021-03-08 23:23:45 +00:00
Roger A. Light
f89a3c3fc0 Fix messages to $ prefixed topics being rejected.
Closes #2111. Thanks to yellowgg2.
2021-03-06 00:57:37 +00:00
Roger Light
64f697d55d Fix tls_version behaviour not matching documentation.
It was setting the exact TLS version to use, not the minimium TLS
version to use.

Closes #2110. Thanks to Petter Jönsson.
2021-03-03 22:21:24 +00:00
Roger A. Light
cec9d36445 Bump version and web pages. 2021-02-25 17:23:24 +00:00
Roger A. Light
465ee546c4 Update comment. 2021-02-25 17:13:56 +00:00
Roger A. Light
2190e98b20 Fix memory tracking not being available on FreeBSD or macOS.
Closes #2096. Thanks to blusewang.
2021-02-25 17:04:15 +00:00
Roger A. Light
12ff9d5e14 Allow Docker images to run with anon, without a config file.
Provide a mechanism for Docker users to run a broker that doesn't use
authentication, without having to provide their own configuration file.

Closes #2040.
2021-02-25 13:51:27 +00:00
Roger A. Light
9b08faf0bd Fix mosquitto_{pub|sub}_topic_check() function returns.
The would not return MOSQ_ERR_INVAL on topic == NULL.
2021-02-09 14:09:53 +00:00
Roger A. Light
1b24f625ea Give compile time warning for libwebsockets
If it is compiled without external poll support.

Closes #2060. Thanks to Yannic Schröder.
2021-02-09 13:18:58 +00:00