Commit Graph

38 Commits

Author SHA1 Message Date
Roger A. Light
a45badc57f Add macros to make session expiry values clearer 2025-12-04 11:19:36 +00:00
Roger A. Light
935de54382 Minor refactor 2025-12-02 16:21:15 +00:00
Norbert Heusser
68d933a22f Fixed forwarding of subscription identifier to client message peristence callback
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2025-12-02 16:11:17 +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
883fdb2ad2 Formatting: Double indent continuation 2025-09-17 12:03:06 +01:00
Roger A. Light
6e7ddef145 Formatting: Always include comma for last enum
Plus some spacing
2025-09-17 12:03:06 +01:00
Roger A. Light
d743413ac3 Formatting: Spacing consistency 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
Norbert Heusser
7a22685866 Fixed memory issue with property handling in persistence SQLite will restore
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2025-08-04 18:36:24 +01:00
Norbert Heusser
424df70395 Add support for will message to persistence API and Sqlite3 persistence plugin
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2025-07-10 00:52:33 +01:00
Roger A. Light
b5c25cf1d0 Refactor memory functions to common static library. 2024-03-17 10:30:07 +00:00
Roger A. Light
d17a88d916 Refactor headers for easier discovery. 2023-12-23 12:59:58 +00:00
Roger A. Light
6a641c9c0a Use _SAFE version incase a callback unregisters itself. 2023-01-25 16:47:35 +00:00
Roger A. Light
fd330de080 client_id -> clientid rename. 2023-01-16 18:46:35 +00:00
Roger A. Light
3e17494d34 Rename topic -> topic_filter in events. 2023-01-16 17:17:55 +00:00
Roger A. Light
1081661f74 Refactor client structs. 2023-01-16 10:21:12 +00:00
Roger A. Light
5364410615 Rename members 2023-01-16 10:21:12 +00:00
Roger A. Light
7013a3502d Refactor client_msg structs 2023-01-16 10:21:12 +00:00
Roger A. Light
331e802913 Rename mosquitto_client_msg -> mosquitto__client_msg 2023-01-16 10:21:12 +00:00
Roger A. Light
3634f18bc9 Refactor subscription structs 2023-01-16 10:21:12 +00:00
Roger A. Light
100fd31530 Refactor base_msg structs. 2023-01-16 10:21:12 +00:00
Roger A. Light
2e36d523c8 Rename mosquitto_base_msg -> mosquitto__base_msg 2022-12-22 16:04:03 +00:00
Roger Light
1f559f1a71 Merge pull request #2624 from buschulte/fix-some-compiler-warinngs
Add missing callback set calls for MQTTv5 in C++ lib wrapper
2022-10-10 11:22:53 +01:00
Roger A. Light
16feb14a57 Persistence interface updates and sqlite plugin fixes
The MOSQ_EVT_PERSIST_CLIENT_MSG_CLEAR event has been removed, due to
never being called. It is the responsibility of the plugin to remove
client subscriptions and client messages when the client is removed.

Lots of persist test improvements and additions - mostly checking item
counts.
2022-10-09 22:17:47 +01:00
Kai Buschulte
ec8566ba0d Fix conversion warnings
Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
2022-08-29 11:23:21 +00:00
Roger A. Light
e5e41c17c2 The persistence interface shouldn't delay retained messages.
Let plugins do that if they require it.
2022-08-09 11:27:09 +01:00
Roger A. Light
79f4c12141 Pass missing parameters to client_msg update for persist plugins. 2022-03-23 20:04:39 +00:00
Roger A. Light
b4a0255f1c Process retain persist events only every 10 seconds. 2022-03-01 21:17:18 +00:00
Roger A. Light
cbb01193a0 Rename persist retain_add to retain_set 2022-03-01 20:55:56 +00:00
Roger A. Light
c985736866 Restrict persistence events to persisted clients only. 2022-03-01 16:24:54 +00:00
Roger A. Light
2d3b152a22 Rename of mosquitto_msg_store struct.
struct mosquitto_msg_store -> struct mosquitto_base_msg

This is the base message which client messages and retained messages
refer to. The base messages are still held in the message store.

This change comes about because the persistence interface exposes these
message types. Prior to this commit the different messages were "msg",
"client_msg", and "retain". After this commit there is "base_msg",
"client_msg", and and "retain_msg" in the persist interface.
2022-03-01 10:44:47 +00:00
Roger A. Light
0a0f4ead42 Plugin interface interface and test improvements. 2022-01-09 23:43:12 +00:00
Roger A. Light
2fafdd2256 Don't send persist updates on shutdown. 2021-12-20 00:54:21 +00:00
Roger A. Light
01b3e04362 Rename remove to delete in external interface.
This is consistent with usage in the dynsec plugin.
2021-12-16 00:00:17 +00:00
Roger A. Light
9ce09de2e6 Add MOSQ_EVT_PERSIST_CLIENT_MSG_CLEAR plugin event. 2021-12-13 22:19:29 +00:00
Roger A. Light
3daf76257b Various persistence plugin fixes. 2021-12-13 09:57:12 +00:00
Roger A. Light
68fbb7b5bb auth method needs persisting. 2021-11-25 10:32:02 +00:00
Roger A. Light
0f8733627a Plugin persistence interface. 2021-11-24 19:26:07 +00:00