You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mosquitto/plugins
Roger A. Light 9d9469cbec Merge branch 'fixes' 3 years ago
..
auth-by-ip Pointless whitespace tidy. 4 years ago
deny-protocol-version Add deny-protocol-version example plugin, for 2.0 only. 3 years ago
dynamic-security dynsec: Forbid deleting the anon group. 3 years ago
message-timestamp Pointless whitespace tidy. 4 years ago
payload-modification Pointless whitespace tidy. 4 years ago
CMakeLists.txt Various Windows build fixes. 5 years ago
Makefile Add deny-protocol-version example plugin, for 2.0 only. 3 years ago
README.md Add trivial basic authentication plugin based on IP. 5 years ago

README.md

Plugins

This directory contains plugins for use with Mosquitto.

Dynamic security

This is a fully functioning plugin that implements authentication and access control, with configuration via a $CONTROL topic. See the readme in dynamic-security for more information.

Message timestamp

This is an example plugin to demonstrate how it is possible to attach MQTT v5 properties to messages after they have been received, and before they are sent on to subscribers.

This plugin attaches a user-property property to each message which contains the ISO-8601 timestamp of the time the message was received by the broker. This means it is possible for MQTT v5 clients to see how old a retained message is, for example.

Payload modification

This is an example plugin to demonstrate how it is possible to modify the payload of messages after they have been received, and before they are sent on to subscribers.

If you are considering using this feature, you should be very certain you have verified the payload is the correct format before modifying it.

This plugin adds the text string "hello " to the beginning of each payload, so with anything other than simple plain text messages it will corrupt the payload contents.

Authenticate by IP address

This is an example plugin that demonstrates a basic authentication callback that allows clients based on their IP address. Password based authentication is preferred over this very simple type of access control.