Commit graph

25 commits

Author SHA1 Message Date
Roger A. Light
4199e7b2d3 Move control functions to common, and use in the broker. 2022-12-31 14:34:26 +00:00
Norbert Heusser
170cd85cec Add target test-compile to all Makefile to allow tests in plugin folders
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2022-12-09 18:03:54 +00:00
Roger A. Light
5279a424b1 Dynsec: Kick clients in tick event rather than immediately
This means that PUBACK/PUBREC should be sent to clients that modify
their own roles.

Closes #2474. Thanks to Stefano Berlato.
2022-03-12 23:16:57 +00:00
Norbert Heusser
e7e8b6e832 * Added list of connections to dynsec/getClient response
* Added new helper function mosquitto_apply_on_all_clients to broker
* Refactoring in dynamic-security plugin

Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2022-02-21 16:27:26 +00:00
Roger A. Light
ffb7661d86 Move shared code to common directory
This is currently limited to "utility" type functions and does not include code common to the library and broker that are protocol related.
2022-02-09 16:26:10 +00:00
Roger A. Light
5a3b42d4a4 Use path vars in Makefiles. 2022-02-09 14:44:09 +00:00
Roger A. Light
8d073771c3 Make some plugin code shared for future use. 2022-02-03 23:08:28 +00:00
Roger A. Light
cd28187e5e Minor refactor to separate files. 2021-12-15 16:36:54 +00:00
Roger A. Light
17fd1929eb Move config load/save to own file. 2021-12-13 09:14:05 +00:00
Roger A. Light
799cdead15 Experimental custom websockets support. 2021-10-06 15:32:45 +01:00
Roger A. Light
55d5d2e5f2 Fix for building when uthash not available. 2021-09-30 21:37:11 +01:00
Roger A. Light
c862ffec8b Allow mosquitto_ctrl dynsec module to update passwords in files 2021-08-18 16:14:27 +01:00
Roger A. Light
14993528ab Dynsec will generate a config file if it is not found. 2021-07-29 17:47:59 +01:00
Roger A. Light
e0309acebc Add mosquitto_sub_matches_acl()
This moves the sub matching sub code from the dynsec plugin to the library and broker, and removes all of the malloc calls at the same time.
2021-06-10 22:19:39 +01:00
Roger Light
a5d9986cbd More compiler warning fixes. 2021-03-21 22:50:48 +00:00
Peter Robinson
9d7580fdb6 Use libdir as the install prefix for plugins
Use the libdir variable from config.mk just like lib/ uses to ensure
that the plugins are installed into the same location as the library.
This fixes systems that use lib64 for libraries like most 64 bit
Linux distributions.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
2020-12-18 08:05:06 +00:00
Roger A. Light
f7dc138157 Fix install target when using WITH_CJSON=no.
Closes #1938. Thanks to apple3306 and JulianCaruso.
2020-12-11 00:07:11 +00:00
Roger A. Light
3047374693 Drop hard coded linker flags. 2020-12-06 07:43:59 +00:00
Roger A. Light
791c63372b Fix cjson include paths. 2020-12-04 22:15:19 +00:00
Roger A. Light
42f09b8add Build fixes 2020-12-02 10:36:00 +00:00
Roger A. Light
7dc739a11e Disable dynsec build if cJSON or TLS not available. 2020-11-26 09:42:33 +00:00
Roger A. Light
4f9fe4df4d dynsec: Rolelist as own file for consistency. 2020-11-18 11:54:13 +00:00
Roger A. Light
fe436cda95 dynsec: Fix potential grouplist leaks. 2020-11-18 11:46:23 +00:00
Roger A. Light
20bf6e706e dynsec: Fix role clientlists not being freed. 2020-11-18 11:46:23 +00:00
Roger A. Light
fdff255916 New dynamic security plugin. 2020-10-27 00:54:55 +00:00