Go to file
Roger A. Light d26534e22b Fix Coverity scan issues.
1302840
1353078
1431131
1431134
1431135
1436826
1436827
1436828
1436830
1436831
1436834
1436835
1436838
1436839
1436840
1436844
1436846
1436853
1436854
1436859
1436860
1436861
1436863
1436867
2020-11-23 22:05:12 +00:00
.github Previous change to only update on difference causes errors :( 2020-08-06 12:50:18 +01:00
apps ctrl: Give helpful message when initialising dynsec. 2020-11-18 11:46:23 +00:00
client Fix Coverity scan issues. 2020-11-23 22:05:12 +00:00
cmake New dynamic security plugin. 2020-10-27 00:54:55 +00:00
deps Move deps directory to root. 2020-10-13 16:06:06 +01:00
doc JOSS paper. 2017-05-17 14:56:28 +01:00
docker New dynamic security plugin. 2020-10-27 00:54:55 +00:00
examples Merge remote-tracking branch 'origin/fixes' into develop 2020-09-24 17:03:14 +01:00
include Basic client disconnect event support for plugins. 2020-11-05 10:52:21 +00:00
installer Consistency in readme naming. 2020-11-12 22:08:38 +00:00
lib Fix Coverity scan issues. 2020-11-23 22:05:12 +00:00
logo Improve logo files. 2016-10-05 15:52:09 +01:00
man Fix slug 2020-11-13 22:11:08 +00:00
misc Breaking: Drop privileges after loading the configuration 2020-11-05 12:05:07 +00:00
plugins dynsec: Fix missing correlationData for getDefaultACLAccess. 2020-11-23 14:06:19 +00:00
security Fix apparmor profile to match debian packaging. 2014-07-28 09:22:20 +01:00
service Change systemd unit files to create /var/log/mosquitto 2020-07-14 20:10:54 +01:00
snap Bump version, add new www posts. 2020-08-19 14:46:44 +01:00
src Fix Coverity scan issues. 2020-11-23 22:05:12 +00:00
test Fix building of old tests. 2020-11-12 21:57:54 +00:00
www Point Windows users to older installers if needed. 2020-11-17 10:58:54 +00:00
.gitignore Ignore windows 64 bit build dir. 2020-11-17 10:21:58 +00:00
.travis.yml Travis: Use bionic distro. 2020-03-27 00:07:48 +00:00
about.html Installer and readme updates. 2018-08-16 13:24:07 +01:00
aclfile.example Initial contribution. 2014-05-07 23:27:00 +01:00
appveyor.yml Update appveyor to take into account now available packages. 2018-04-12 10:30:52 +01:00
buildtest.py Build variant fixes. 2020-10-13 16:06:12 +01:00
ChangeLog.txt Fix bridge sock not being removed from sock hash on error 2020-11-18 15:43:57 +00:00
CMakeLists.txt CMake: add options about whether to build the apps and plugins 2020-11-20 16:24:02 +00:00
COMPILING.md Consistency in readme naming. 2020-11-12 22:08:38 +00:00
config.h Fixed QNX compilation. QNX 6.5 supports _XOPEN_SOURCE=600 or less. 2020-11-02 21:31:23 +00:00
config.mk Add build support for jemalloc 2020-11-12 17:35:19 +00:00
CONTRIBUTING.md Fix link in CONTRIBUTING.md. 2019-08-01 10:30:13 +01:00
edl-v10 Initial contribution. 2014-05-07 23:27:00 +01:00
epl-v10 Initial contribution. 2014-05-07 23:27:00 +01:00
libmosquitto.pc.in Add pkg-config files to CMake build (#213) 2016-09-10 21:48:50 +01:00
libmosquittopp.pc.in Add pkg-config files to CMake build (#213) 2016-09-10 21:48:50 +01:00
LICENSE.txt Initial contribution. 2014-05-07 23:27:00 +01:00
Makefile Consistency in readme naming. 2020-11-12 22:08:38 +00:00
mosquitto.conf Add the bridge_bind_address option. 2020-10-27 16:32:21 +00:00
notice.html Eclipse required files. 2014-05-08 22:41:59 +01:00
pskfile.example Initial contribution. 2014-05-07 23:27:00 +01:00
pwfile.example Initial contribution. 2014-05-07 23:27:00 +01:00
README-letsencrypt.md Breaking: Drop privileges after loading the configuration 2020-11-05 12:05:07 +00:00
README-tests.md Consistency in readme naming. 2020-11-12 22:08:38 +00:00
README-windows.txt Consistency in readme naming. 2020-11-12 22:08:38 +00:00
README.md Consistency in readme naming. 2020-11-12 22:08:38 +00:00
SECURITY.md Add SECURITY.md. 2019-05-29 11:02:34 +01:00
set-version.sh Bump version, add new www posts. 2020-08-19 14:46:44 +01:00
THANKS.txt Merge branch 'master' into develop 2017-03-06 21:19:53 +00:00
travis-configure.sh Better attempt at fixing mac travis. 2018-09-25 14:25:02 +01:00
travis-install.sh Path fix for travis. 2020-07-16 16:19:33 +01:00

Eclipse Mosquitto

Mosquitto is an open source implementation of a server for version 5.0, 3.1.1, and 3.1 of the MQTT protocol. It also includes a C and C++ client library, and the mosquitto_pub and mosquitto_sub utilities for publishing and subscribing.

See the following links for more information on MQTT:

Mosquitto project information is available at the following locations:

There is also a public test server available at https://test.mosquitto.org/

Installing

See https://mosquitto.org/download/ for details on installing binaries for various platforms.

Quick start

If you have installed a binary package the broker should have been started automatically. If not, it can be started with a basic configuration:

mosquitto

Then use mosquitto_sub to subscribe to a topic:

mosquitto_sub -t 'test/topic' -v

And to publish a message:

mosquitto_pub -t 'test/topic' -m 'hello world'

Documentation

Documentation for the broker, clients and client library API can be found in the man pages, which are available online at https://mosquitto.org/man/. There are also pages with an introduction to the features of MQTT, the mosquitto_passwd utility for dealing with username/passwords, and a description of the configuration file options available for the broker.

Detailed client library API documentation can be found at https://mosquitto.org/api/

Building from source

To build from source the recommended route for end users is to download the archive from https://mosquitto.org/download/.

On Windows and Mac, use cmake to build. On other platforms, just run make to build. For Windows, see also README-windows.md.

If you are building from the git repository then the documentation will not already be built. Use make binary to skip building the man pages, or install docbook-xsl on Debian/Ubuntu systems.

Build Dependencies

  • c-ares (libc-ares-dev on Debian based systems) - only when compiled with make WITH_SRV=yes
  • libwebsockets (libwebsockets-dev) - enable with make WITH_WEBSOCKETS=yes
  • openssl (libssl-dev on Debian based systems) - disable with make WITH_TLS=no
  • xsltproc (xsltproc and docbook-xsl on Debian based systems) - only needed when building from git sources - disable with make WITH_DOCS=no
  • uthash / utlist - bundled versions of these headers are provided, disable their use with make WITH_BUNDLED_DEPS=no
  • cJSON - for client JSON output support. Disable with make WITH_CJSON=no Auto detected with CMake.

Equivalent options for enabling/disabling features are available when using the CMake build.

Credits

Mosquitto was written by Roger Light roger@atchoo.org

Master: Travis Build Status (master) Develop: Travis Build Status (develop) Fixes: Travis Build Status (fixes)