Commit Graph
39 Commits
Author SHA1 Message Date
Roger A. Light 501690d312 Handle identifier==NULL case. 2021-04-28 09:21:50 +01:00
Roger Light e1c8f09372 Remove C++ style comments. 2021-04-25 22:26:12 +01: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
Roger A. Light ce30f811ba Improve API documentation.
Fix return code on callback unregister.
2020-12-22 13:54:51 +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
Roger A. Light 05d4766aef Fix plugin callback not being correctly removed. 2020-11-24 13:09:57 +00:00
Roger A. Light adfa9f1e21 Always zero terminate payloads (removes uhpa support) 2020-11-24 12:24:40 +00:00
Roger A. Light 524510f4f6 Fix some plugin memory not being freed on exit. 2020-11-18 11:46:10 +00:00
Roger A. Light b816d46508 Use db as a global var instead of passing to functions.
This allows a big swath of ifdefs to be removed. It also means savings as the db var is not passed around all of the time, and makes it easier to remove the final broker call to mosquitto_time() call in packet_mosq.c. In one test this reduced the calls to mosquitto_time() from 295k to 48k.
2020-11-06 17:16:23 +00:00
Roger A. Light c5fee09c24 Basic client disconnect event support for plugins. 2020-11-05 10:52:21 +00:00
Roger A. Light fcb8bc0b9b Fix use of incorrect callback list. 2020-10-28 11:23:48 +00:00
Roger A. Light 443275a2d0 Fix more "incorrect" disconnect messages. 2020-10-27 15:35:40 +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 06b933c3ba Add tick event to plugin interface. 2020-10-23 22:51:08 +01:00
Roger A. Light 9d68da4664 Fix plugin payload modification. 2020-10-21 16:24:43 +01:00
Roger Light 5b4884a855 Callback struct padding for future use. 2020-09-30 10:26:17 +01:00
Roger A. Light c927446264 Fix $CONTROL plugin unregistering. 2020-09-23 17:03:01 +01:00
Roger A. Light d8d24e76eb Free plugin identifier on cleanup. 2020-09-23 15:38:25 +01:00
Roger A. Light cf1c156765 New plugin interface
This is not specific to authentication, and allows plugins greater flexibility in what events they are interested in. It also adds message handling, and $CONTROL handling.
2020-09-22 14:49:28 +01:00
Roger A. Light 43b3184492 Rename to indicate these are public functions. 2020-09-18 21:29:42 +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 2dc8d2a19a Allow plugins to send messages to specific clients. 2020-08-12 15:18:17 +01:00
Roger A. Light a913a05fbd Documentation and error checking. 2020-08-12 15:18:17 +01:00
Roger A. Light d6f4f4e0bc Add mosquitto_broker_publish_copy()
Rename mosquitto_plugin_publish() to mosquitto_broker_publish().

These two functions achieve the same thing. *_publish() publishes the payload and frees it later. *_publish_copy() takes a copy of the payload, so the plugin still owns the memory it passed to the function.
2020-08-12 15:18:17 +01:00
Roger A. Light 94b39d12ac Fix potential NULL dereference.
Coverity Scan 1431139.
2020-08-06 13:47:41 +01:00
Roger A. Light f46187d5e5 Add mosquitto_client_protocol_version() function.
This can be used by plugins to determine which version of MQTT a client
has connected with.
2020-07-12 23:01:20 +01:00
Roger Light 318dead6bf Function to allow plugins to publish messages. 2020-06-30 10:31:34 +01:00
Roger A. Light b0a065f790 Update changelog. Release page. Bump copyright. 2020-02-27 23:26:58 +00:00
Roger A. Light 0c68c20d2b Fix mosquitto_client_protocol() returning incorrect values. 2020-02-27 15:01:41 +00:00
Roger A. Light 494f35bd8d Add mosquitto_set_username() plugin function. 2019-04-04 12:39:38 +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
Roger A. Light 54db895cb3 Rename clean_session to clean_start for v5. 2018-11-27 10:02:10 +00:00
Roger A. Light 57ee8b92bc Mac build fixes. 2018-04-16 11:48:42 +01:00
Roger A. Light 6a2172f472 Windows fixes. 2018-04-12 11:09:02 +01:00
Roger A. Light f4d238be18 Bump copyright years. 2018-04-11 15:24:29 +01:00
Roger A. Light b40cedaf1d More client accessors. 2016-07-09 21:49:13 +01:00
Roger A. Light 63f46a999f Add username accessor. 2016-07-08 11:50:50 +01:00