Commit Graph

2376 Commits

Author SHA1 Message Date
Arenoros
9c3a214a01 In android ndk doesn't exist librt and libpthread
Signed-off-by: Arenoros <arenoros@gmail.com>
2020-11-02 21:36:24 +00:00
raspopov
add355a78b QNX has no pselect() either.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-11-02 21:33:09 +00:00
raspopov
aed4b945d9 Fixed QNX compilation. QNX 6.5 supports _XOPEN_SOURCE=600 or less.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-11-02 21:31:23 +00:00
Roger A. Light
92a1a02430 Tag local docker builds. 2020-11-02 13:05:59 +00:00
Roger A. Light
a3bff44a3e Split mosquitto_ctrl manpages by module. 2020-11-01 23:49:40 +00:00
Roger A. Light
bb03b9c081 Let mosquitto_ctrl load external modules.
Also provide an example.
2020-11-01 22:59:39 +00:00
Roger A. Light
97385f522b Ctrl: Client only deals with a payload string, not cJSON. 2020-11-01 22:11:32 +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
866c395dcc Dynsec: Add "disabled" property for getClient/listClients. 2020-10-30 12:35:34 +00:00
Roger A. Light
5b28fac61d Dynsec: Kick clients on access changes
This works in the following circumstances:

* client is deleted
* client is modified
* client has role added
* client has role removed
* group is deleted
* group is modified
* group has role added
* group has role removed
* group has client added
* group has client removed
* anonymous group is changed

The following circumstances are not yet fixed:

* role is deleted
* role is modified
* role has ACL added
* role has ACL removed
2020-10-30 12:35:02 +00:00
Roger A. Light
30bf47b0d1 Fix printing of ints in dynsec json. 2020-10-29 23:51:32 +00:00
Roger A. Light
e95327789e Note that zero length retained messages are never retained.
Closes #1871. Thanks to James Kleeh.
2020-10-29 19:39:50 +00:00
Roger A. Light
66d16280d8 dynsec: Add enableClient disableClient commands. 2020-10-29 15:17:12 +00:00
Roger A. Light
98815c5037 ctrl: Ask for passwords if not given.
Applies to login user, init, createClient, and setClientPassword.
2020-10-29 14:35:50 +00:00
Roger A. Light
31b1cbb23f dynsec: Clients can be created with no password.
They will be unable to log in until a password is created.
2020-10-29 14:35:11 +00:00
Roger A. Light
99a544ac73 ctrl: Ask for login password if the user doesn't provide it. 2020-10-29 12:49:51 +00:00
Roger A. Light
1b3dc5e978 passwd: Move password getting code to own file for sharing. 2020-10-29 12:48:59 +00:00
Roger A. Light
df30b6c9d4 Dynsec: add getAnonymousGroup and getDefaultACLAccess commands 2020-10-29 11:38:34 +00:00
Roger A. Light
c9cb10a079 ctrl: get* output for dynsec. 2020-10-29 09:59:07 +00:00
Roger A. Light
4c427915a0 ctrl: Fix acltype names. 2020-10-28 16:18:08 +00:00
Roger A. Light
015eee6cb6 ctrl: Fix parameter order to match docs. 2020-10-28 16:17:51 +00:00
Roger A. Light
1e2ba03754 ctrl: Give dynsec init user more rights.
Subscribe and receive from $SYS/#
Subscribe and receive from #
2020-10-28 11:50:52 +00:00
Roger A. Light
1f0ae42917 ctrl: Fix incorrect dynsec commands. 2020-10-28 11:46:13 +00:00
Roger A. Light
fcb8bc0b9b Fix use of incorrect callback list. 2020-10-28 11:23:48 +00:00
Roger A. Light
a1ad4cfcc4 Dynsec: Rename ACL types for clarity.
publishBrokerToClient -> publishClientReceive
publishClientToBroker -> publishClientSend
2020-10-28 11:03:44 +00:00
Roger A. Light
004bd3c5cd Dynsec: Set default behaviour to be less restrictive.
Publish broker to client and unsubscribe are now allowed by default. With Publish client to broker and subscribe denied by default there is still no way a client can exchange messages, but it is now easier to administer.
2020-10-28 11:03:44 +00:00
Roger A. Light
e01d391c0b Fix crash on Windows if loading a plugin fails.
Closes #1866. Thanks to roebotron.
2020-10-27 18:25:00 +00:00
Roger A. Light
451b8d0f59 Remove allocs in logging. 2020-10-27 17:13:28 +00:00
Roger A. Light
abbeb4494f Change tls_version option behaviour.
The `tls_version` option now defines the *minimum* TLS protocol version to
be used, rather than the exact version.

Closes #1258. Thanks to Daniele Sluijters.
2020-10-27 16:44:03 +00:00
Roger A. Light
edee5aaf8d Add the bridge_bind_address option.
Closes #1311. Thanks to beville.
2020-10-27 16:32:21 +00:00
Roger A. Light
e3ed8879f2 Fix test compilation. 2020-10-27 15:35:48 +00:00
Roger A. Light
443275a2d0 Fix more "incorrect" disconnect messages. 2020-10-27 15:35:40 +00:00
Roger A. Light
dcf6372a2a Add support for bridge retain-available. 2020-10-27 13:52:35 +00:00
Roger A. Light
291b711bd4 Fix incorrect disconnect messages. 2020-10-27 12:37:54 +00:00
Roger A. Light
d8f5aacd7f Add the bridge_max_packet_size option.
Closes #265.
2020-10-27 11:35:06 +00:00
Roger A. Light
916c3744f3 Fix log_timestamp_format not applying to log_dest topic.
Closes #1862. Thanks to Kaushik-27.
2020-10-27 10:35:45 +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
987f7ff76a Make it clearer that log_dest topic doesn't include debug. 2020-10-27 09:43:27 +00:00
Roger A. Light
fdff255916 New dynamic security plugin. 2020-10-27 00:54:55 +00:00
Roger A. Light
e82ee879d5 Merge branch 'fixes' into develop 2020-10-27 00:43:07 +00:00
raspopov
53d63fe922 Fixed compilation error on Win32 UNICODE platform.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-10-26 21:42:03 +00:00
raspopov
6af56610ac Fixed "config.h" file placement to help using it as a precompiled header.
Signed-off-by: raspopov <raspopov@cherubicsoft.com>
2020-10-26 14:57:37 +00:00
Roger A. Light
3b99fbbe8c Return MOSQ_ERR_NOT_SUPPORTED on unsupported plugin event. 2020-10-26 11:41:33 +00:00
Roger A. Light
b36247cb10 Fix payload example mosquitto_plugin_version() calls. 2020-10-26 11:40:50 +00:00
Roger A. Light
95e009c429 Document what to do on non-matching plugin versions. 2020-10-24 00:17:13 +01:00
Roger A. Light
42b9d94e91 Tell plugins which plugin versions the broker supports. 2020-10-24 00:13:45 +01:00
Roger A. Light
06b933c3ba Add tick event to plugin interface. 2020-10-23 22:51:08 +01:00
Roger A. Light
3eb39b38da Use atomics in test. 2020-10-21 21:16:58 +01: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