Commit Graph

40 Commits (26f747e0ac003b131857c0e7ea3a9849ce9f1286)

Author SHA1 Message Date
Roger A. Light a1a190b482 Pointless whitespace tidy. 4 years ago
Roger A. Light 501690d312 Handle identifier==NULL case. 4 years ago
Roger Light e1c8f09372 Remove C++ style comments. 4 years ago
Roger A. Light a4389fc9ce Fix SPDX identifiers: EDL-1.0 -> BSD-3-Clause.
The two licenses are the same.
5 years ago
Roger A. Light ce30f811ba Improve API documentation.
Fix return code on callback unregister.
5 years ago
Roger A. Light 3731535298 Add SPDX license identifiers. 5 years ago
Roger A. Light 584cf51ba7 Update to EPL-2.0 5 years ago
Roger A. Light 05d4766aef Fix plugin callback not being correctly removed. 5 years ago
Roger A. Light adfa9f1e21 Always zero terminate payloads (removes uhpa support) 5 years ago
Roger A. Light 524510f4f6 Fix some plugin memory not being freed on exit. 5 years ago
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.
5 years ago
Roger A. Light c5fee09c24 Basic client disconnect event support for plugins. 5 years ago
Roger A. Light fcb8bc0b9b Fix use of incorrect callback list. 5 years ago
Roger A. Light 443275a2d0 Fix more "incorrect" disconnect messages. 5 years ago
Roger A. Light 3b99fbbe8c Return MOSQ_ERR_NOT_SUPPORTED on unsupported plugin event. 5 years ago
Roger A. Light 06b933c3ba Add tick event to plugin interface. 5 years ago
Roger A. Light 9d68da4664 Fix plugin payload modification. 5 years ago
Roger Light 5b4884a855 Callback struct padding for future use. 5 years ago
Roger A. Light c927446264 Fix $CONTROL plugin unregistering. 5 years ago
Roger A. Light d8d24e76eb Free plugin identifier on cleanup. 5 years ago
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.
5 years ago
Roger A. Light 43b3184492 Rename to indicate these are public functions. 5 years ago
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.
5 years ago
Roger A. Light 2dc8d2a19a Allow plugins to send messages to specific clients. 5 years ago
Roger A. Light a913a05fbd Documentation and error checking. 5 years ago
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.
5 years ago
Roger A. Light 94b39d12ac Fix potential NULL dereference.
Coverity Scan 1431139.
5 years ago
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.
5 years ago
Roger Light 318dead6bf Function to allow plugins to publish messages. 5 years ago
Roger A. Light b0a065f790 Update changelog. Release page. Bump copyright. 6 years ago
Roger A. Light 0c68c20d2b Fix `mosquitto_client_protocol()` returning incorrect values. 6 years ago
Roger A. Light 494f35bd8d Add mosquitto_set_username() plugin function. 7 years ago
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
7 years ago
Roger A. Light ce31269e05 Update changelog, bump version, bump copyright year. 7 years ago
Roger A. Light 54db895cb3 Rename clean_session to clean_start for v5. 7 years ago
Roger A. Light 57ee8b92bc Mac build fixes. 8 years ago
Roger A. Light 6a2172f472 Windows fixes. 8 years ago
Roger A. Light f4d238be18 Bump copyright years. 8 years ago
Roger A. Light b40cedaf1d More client accessors. 9 years ago
Roger A. Light 63f46a999f Add username accessor. 9 years ago