Roger A. Light
e6dd08074d
TLS certificates for the server are now reloaded on SIGHUP.
2020-11-04 22:57:10 +00:00
Roger A. Light
291b711bd4
Fix incorrect disconnect messages.
2020-10-27 12:37:54 +00:00
Roger A. Light
88b5daee66
Try very hard not to produce "Socket error" message.
...
This happens when an unhandled error occurs on a socket/read write. The
message is confusing to people.
2020-10-27 10:04:22 +00:00
Roger A. Light
06b933c3ba
Add tick event to plugin interface.
2020-10-23 22:51:08 +01:00
Roger A. Light
4f61f6c161
Fix conversion errors.
2020-10-17 01:23:08 +01:00
Roger A. Light
f0862e26ec
Add mosquitto_kick_client_by_clientid()
and mosquitto_kick_client_by_username()
...
These can be used by plugins to disconnect clients.
2020-09-07 13:51:44 +01:00
Roger A. Light
bb5456729d
Move keepalive check code to separate file.
...
This is in preparation for changing to a tree based implementation.
2020-09-05 22:59:50 +01:00
Roger A. Light
961ffcb2ae
Remove redundant keepalive check.
...
Websockets clients are now part of the by_sock hashtable, so this isn't
needed.
2020-09-05 21:18:45 +01:00
Roger A. Light
581e843131
Move keepalive check to its own function.
2020-08-18 08:40:33 +01:00
Roger A. Light
b91e78318d
Don't always iterate over entire inflight messages list
...
If we have e.g. max_inflight_messages set to 1000, and currently have 999 messages inflight, then when we send a new message to a client we have to iterate over the whole list to get to the newest message. This change means that we start of the back of the list to find the newest items, which reduces overhead.
2020-08-17 23:03:25 +01:00
Roger Light
58aa41c813
Optimise use of db__message_write()
...
New messages are now queued for clients when old ones are sent, rather than on every iteration of the main loop. This produces good performance improvements.
2020-08-12 15:29:08 +01:00
Roger A. Light
2dc8d2a19a
Allow plugins to send messages to specific clients.
2020-08-12 15:18:17 +01:00
Roger A. Light
e56b953abd
Free memory after sending queued plugin message.
2020-08-12 15:18:17 +01:00
Roger A. Light
872222c3c9
Remove unused values.
...
Coverity Scan 1431134, 1431136, 1431140.
2020-08-06 13:42:35 +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 Light
318dead6bf
Function to allow plugins to publish messages.
2020-06-30 10:31:34 +01:00
Roger A. Light
ea47f6b0dc
Clearer client disconnection message.
2020-04-28 10:42:49 +01:00
Roger Light
986bf89f47
Prototype separate poll/epoll files.
2020-03-26 10:35:02 +00:00
Roger A. Light
d96543c0b8
Merge branch 'fixes' into develop
2020-03-03 12:54:57 +00:00
Roger A. Light
b0a065f790
Update changelog. Release page. Bump copyright.
2020-02-27 23:26:58 +00:00
Roger A. Light
5528dde56a
Fix possible null dereferences.
2020-01-23 12:51:12 +00:00
Roger A. Light
c0443637e8
Merge branch 'master'
...
Conflicts:
ChangeLog.txt
config.mk
src/context.c
src/loop.c
src/subs.c
test/broker/01-connect-bad-packet.py
test/broker/02-subpub-qos1-bad-pubcomp.py
test/broker/02-subpub-qos1-bad-pubrec.py
test/broker/02-subpub-qos2-bad-puback-1.py
test/broker/02-subpub-qos2-bad-puback-2.py
test/broker/02-subpub-qos2-bad-pubcomp.py
test/broker/02-subpub-qos2.py
test/broker/07-will-null-topic.py
2019-12-03 13:59:05 +00:00
Roger A. Light
6dec2b468b
Remove redundant expiry checks
...
This is all now handled in session_expiry.c, through session expiry interval/time.
2019-11-28 16:19:57 +00:00
Roger A. Light
54ed3c0fc9
Merge branch 'master' into develop
2019-09-25 19:09:10 +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
096380fbdc
Add workaround for libwebsockets 3.2.0.
2019-09-24 10:21:51 +01:00
Roger A. Light
8f6ac1b64a
Fix for websockets regression.
2019-09-12 13:31:01 +01:00
Roger A. Light
9ad5fe7d95
Fix repeated "Error in poll" messages on Windows.
...
This occurs when only websockets listeners are defined.
Closes #1391 . Thanks to stopak.
2019-09-11 15:53:36 +01:00
Roger A. Light
034324c46d
Fix websockets 3.2 causing slow connection on non-websockets listeners
...
Closes #1406 . Thanks to pbrenna.
2019-09-07 21:45:56 +01:00
Roger A. Light
f1516f86cb
Improve error messages in some situations when clients disconnect.
...
Reduces the number of "Socket error on client X, disconnecting"
messages.
2019-09-05 12:31:52 +01:00
Roger A. Light
1c1ccaee52
Merge branch 'master' into develop
2019-08-06 15:04:36 +01:00
Roger A. Light
13ac1080a0
Refactoring bridge code
...
This separates out a good amount from the main loop code.
2019-07-11 14:43:32 +01:00
Roger A. Light
5088202529
Fix persistent Websockets clients not receiving messages.
...
This occurs after they reconnect, having sent DISCONNECT
on a previous session.
Closes #1227 . Thanks to usernametaken.
2019-05-28 22:13:22 +01:00
Roger A. Light
baf1909ffb
Improve some messages when client disconnects.
2019-04-16 11:40:07 +01:00
Roger A. Light
9faad1e078
Fix a variety of scan-build warnings.
2019-03-26 14:00:42 +00:00
Roger A. Light
214a5f3aab
v5 persistence file format
...
This includes changes to improve read/write performance.
It is not complete, and will have further changes to add properties and anything else required for MQTT v5.
2019-03-21 00:35:56 +00: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
110f4aada6
Don't overwrite disused client state.
2019-03-15 21:38:24 +00:00
Roger A. Light
2dd24449ad
Fix "unused parameter" warnings.
2019-03-13 14:46:05 +00:00
Roger A. Light
ac91144495
Session expiry interval support - not working for file persistence.
2019-03-06 14:47:16 +00:00
Roger A. Light
ce31269e05
Update changelog, bump version, bump copyright year.
2019-02-28 16:56:15 +00:00
Roger A. Light
c506c8335b
Will delay tests and implementation.
2019-02-27 09:27:34 +00:00
Roger A. Light
084062c85e
Merge branch 'fixes' into mqtt5
2019-02-12 17:05:42 +00:00
Roger A. Light
9999faf9da
Add rewritten build test script and remove some build warnings.
2019-02-12 13:24:54 +00:00
Roger A. Light
05458eb35d
Fix some unused variable warnings.
2019-02-08 13:01:07 +00:00
Roger A. Light
d6a690aa8d
Fix Will not being sent for Websockets clients.
...
Closes #1143 . Thanks to salcedo.
2019-02-08 13:01:07 +00:00
Roger A. Light
fcf4cd0b27
Merge branch 'master' into mqtt5
2018-12-19 14:11:11 +00:00
Roger A. Light
89f3d7bb3f
Don't print connect/disconnect messages when connection_messages false.
...
Closes #772 . Closes #613 . Closes #537 .
Thanks to Christopher Maynard, Brandon Arrendondo, and qubeck.
2018-12-11 10:55:39 +00:00
Abilio Marques
ead440e47d
bridge: fix issue where keepalive_interval gets added to restart_timeout using ADNS
...
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2018-12-05 11:42:24 +00:00
Roger A. Light
54db895cb3
Rename clean_session to clean_start for v5.
2018-11-27 10:02:10 +00:00