62 Commits

Author SHA1 Message Date
Roger A. Light
49d71f2bd9 Simplify stopping the thread in libmosquitto 2025-11-23 23:11:56 +00:00
Roger A. Light
7ea73f6d60 Formatting: Forbid single line if statements
These hide cases from coverage checks
2025-09-17 12:48:02 +01:00
Roger A. Light
48b76e49f8 Formatting: Misc automatic formatting changes 2025-09-17 12:03:06 +01:00
Roger A. Light
67ad22df0a Formatting: Double space before functions. 2025-09-17 12:03:03 +01:00
Roger A. Light
5bedf53d28 Remove symbian compile checks 2025-08-08 23:59:19 +01:00
Roger A. Light
b8ffdb878e Merge from master 2025-07-25 19:13:51 +01:00
Roger A. Light
43dda2ae20 Fix some build variants 2025-07-10 16:08:49 +01:00
Roger A. Light
e656e694ed Merge branch 'master' into develop 2023-09-09 15:20:40 +01:00
Roger A. Light
269756a171 Fix high CPU use on slow TLS connect.
Closes #2794. Thanks to Evgeny S.
2023-04-27 23:25:52 +01:00
Roger A. Light
fd68bf00c7 Merge branch 'master' into develop 2022-08-17 16:18:24 +01:00
Roger A. Light
49ebb58569 Fix failure to close thread in some situations.
Closes #2545. Thanks to p-luke.
2022-08-15 22:17:00 +01:00
Roger A. Light
e979a46c04 Backport SSL connect fixes.
Closes #2594.
Closes #2595.
2022-08-09 21:25:54 +01:00
Christian Salvasohn
4077987593 fix data race mosquitto_loop function
next_msg_out must be protected with the msgtime_mutex
as done everywhere else in the code else there is a data race
e.g. if mosquitto_publish is called from another thread

Signed-off-by: Christian Salvasohn <csalvasohn@gmx.de>
2022-04-13 20:05:35 +02:00
Roger Light
cd07f1136b Bump copyrights. 2021-11-03 22:10:06 +00:00
Roger A. Light
8ac11929cc Merge branch 'master' into develop 2021-10-27 17:19:33 +01:00
Roger A. Light
799cdead15 Experimental custom websockets support. 2021-10-06 15:32:45 +01:00
Roger A. Light
a1a190b482 Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
doragasu
4471ee9e47 Call disconnect callback on TLS error.
When using the library asynchronously, TLS errors caused e.g. because
of the date/time not set correctly, cause the connection to be silently
dropped without the disconnection callback being invoked, as described
in issue #1052.

This commit fixes the issue, returning the behavior to the one the
library had previous to version 1.5.4, if a TLS error occurs, the
disconnect callback will be invoked for the client to get notified of
the error.

Signed-off-by: doragasu <doragasu@protonmail.com>
2021-09-16 17:06:55 +02:00
Roger A. Light
e0bcf8cda4 Simplify SSL accept/connect. 2021-06-08 23:52:25 +01:00
Roger Light
f934230251 Simplify out packet mutex use. 2021-06-02 15:14:56 +01:00
Roger A. Light
214feb8f6b Merge branch 'fixes' into develop 2021-05-21 15:42:26 +01:00
Roger A. Light
a2ab20df13 Don't call read() if sockpairR < 0.
Coverity #1450782.
2021-05-06 21:04:49 +01:00
Roger A. Light
8a03b5ad5c Function for checking if a context is connected. 2021-05-02 23:19:54 +01:00
Roger Light
ef7662ca8e Merge branch 'master' into develop 2021-04-24 23:32:48 +01:00
Abilio Marques
dd4a64b049 fully empty socketpairR on interruptible_sleep
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2021-03-22 08:15:47 +01:00
Roger Light
1e94e08843 Callbacks no longer block other callbacks.
The can also be set from within a callback.

Closes #2127. Thanks to Weston Schmidt.
2021-03-13 17:31:48 +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
a4389fc9ce Fix SPDX identifiers: EDL-1.0 -> BSD-3-Clause.
The two licenses are the same.
2021-01-20 11:46:18 +00:00
Nikolay Raspopov
71845d28ac Fixed some VS2017 compilation error and warnings (#1916)
* Fixed some VS2017 compilation errors and warnings.

Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-12-02 15:59:45 +00:00
Roger A. Light
df1802d8f1 Fix client state conversion warnings. 2020-12-02 10:26:22 +00:00
Roger A. Light
3731535298 Add SPDX license identifiers. 2020-12-01 20:46:56 +00:00
Roger A. Light
584cf51ba7 Update to EPL-2.0 2020-11-25 17:34:21 +00:00
raspopov
add355a78b QNX has no pselect() either.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-11-02 21:33:09 +00:00
Roger A. Light
2e72d795a9 Fix timeout conversion error. 2020-10-30 21:31:13 +00:00
raspopov
0097a85ce0 Something bad happened with a "timeout" parameter of mosquitto_loop() function in 4f61f6c161. Reverted.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-10-30 18:40:22 +00:00
Roger A. Light
7ae7d73fd4 The loop in packet_write() means that max_packets isn't needed. 2020-10-21 21:16:58 +01:00
Roger A. Light
4f61f6c161 Fix conversion errors. 2020-10-17 01:23:08 +01:00
Roger A. Light
b3c2ac20dc Fix overly broad HAVE_PTHREAD_CANCEL compile guard.
Closes #1547. Thanks to Markus Gothe.
2020-08-11 11:02:38 +01:00
Roger Light
4ef48269f5 Fix mosquitto_loop_stop() not stopping on Windows
Closes #1748. Closes #117. Thanks to Sigmund Vik.
2020-08-11 08:55:05 +01:00
Roger A. Light
346f695937 Separate out delay code from previous commit.
Plus add missing header.
2020-03-12 13:53:44 +00:00
Roger A. Light
5cf94d2e57 Merge branch 'fixes' of git://github.com/ChristianS99/mosquitto into fixes 2020-03-12 13:52:00 +00:00
Roger A. Light
b0a065f790 Update changelog. Release page. Bump copyright. 2020-02-27 23:26:58 +00:00
Christian Schneider
a3ebeff9d7 fix: replace sleep with (p)select in loop_forever
sleep was blocking loop_stop(force=false) since it
was uniteruptible

Signed-off-by: Christian Schneider <cschneider@radiodata.biz>
2019-12-18 18:01:50 +01:00
Roger A. Light
6a01453ce0 Build fixes. 2019-09-25 12:17:17 +01:00
Roger A. Light
1a8c44b84f Fix regression on use of mosquitto_connect_async() not working.
Closes #1415 and #1422. Thanks to Karl Palsson, Till Zimmermann and Liam Fry.
2019-09-24 20:15:04 +01:00
Roger A. Light
ba918ac73e Fix reconnect backoff where connections are dropped
Closes #737. Thanks to chelliwell.
2019-09-04 22:20:13 +01:00
Roger A. Light
a22ccbd884 Clients: improve error msgs when connecting v3.x broker with v5 client
Closes #1344. Thanks to HowJMay.
2019-08-01 11:40:55 +01:00
Roger A. Light
8531cb1d79 Separate broker message queues into in/out.
This allows and includes better flow control handling for QoS>0.
2019-04-17 09:29:34 +01:00
Roger A. Light
320ddc1303 Merge branch 'master'
Conflicts:
	CMakeLists.txt
	ChangeLog.txt
	client/Makefile
	config.mk
	installer/mosquitto.nsi
	installer/mosquitto64.nsi
	lib/mosquitto.h
	lib/mqtt3_protocol.h
	lib/util_mosq.c
	set-version.sh
	snap/snapcraft.yaml
	src/bridge.c
	src/database.c
	src/handle_connack.c
	src/loop.c
	src/persist.c
	test/broker/Makefile
2019-03-16 10:05:38 +00:00
Roger A. Light
ce31269e05 Update changelog, bump version, bump copyright year. 2019-02-28 16:56:15 +00:00