Go to file
2023-01-04 11:38:28 +00:00
.github Run lock only once per week 2022-08-13 21:39:25 +01:00
apps - Fix -o not working in mosquitto_ctrl, and typo in related documentation. 2022-08-10 15:14:32 +01:00
client Fix incorrect topic-alias property value in mosquitto_sub json output. 2022-12-22 13:21:42 +00:00
cmake Fix cjson include paths. 2020-12-04 22:15:19 +00:00
deps Move deps directory to root. 2020-10-13 16:06:06 +01:00
doc Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
docker Revert 1.x docker builds to alpine 3.14 due to openssl build errors 2022-08-16 16:05:08 +01:00
examples Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
include Fix comments errors, it is the client that sends PING to broker actively 2022-08-24 23:28:06 +08:00
installer Bump version, new web post 2022-08-16 13:03:44 +01:00
lib Merge pull request #2683 from guillaumepellegrino/fixes_memleak 2022-12-07 22:41:29 +00:00
logo Improve logo files. 2016-10-05 15:52:09 +01:00
man Merge branch 'make-man' of https://github.com/podsvirov/mosquitto into podsvirov-make-man 2022-12-16 15:52:25 +00:00
misc Fix multiple domains in renewal. 2022-12-30 10:34:18 +00:00
plugins Merge pull request #2689 from zivillian/patch-1 2022-12-07 22:42:45 +00:00
security Fix apparmor incorrectly denying access db tmp file. 2020-12-27 23:05:53 +00:00
service Systemd: Add mosquitto group ownership 2022-07-20 17:03:42 +01:00
snap Bump version, new web post 2022-08-16 13:03:44 +01:00
src Fix Coverity Scan 1501449. 2023-01-04 11:38:28 +00:00
test Fix some error handling related to the bind_interface option. 2022-12-02 14:31:40 +00:00
www Update security page 2022-08-16 16:00:12 +01: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 Pointless whitespace tidy. 2021-10-05 15:20:37 +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 Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
ChangeLog.txt Fix incorrect topic-alias property value in mosquitto_sub json output. 2022-12-22 13:21:42 +00:00
CMakeLists.txt Bump version, new web post 2022-08-16 13:03:44 +01:00
config.h Fix building with Visual Studio 2008 2021-04-18 21:23:25 +02:00
config.mk Bump version, new web post 2022-08-16 13:03:44 +01:00
CONTRIBUTING.md Fix link in CONTRIBUTING.md. 2019-08-01 10:30:13 +01:00
edl-v10 Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
epl-v20 Pointless whitespace tidy. 2021-10-05 15:20:37 +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 Update to EPL-2.0 2020-11-25 17:34:21 +00:00
Makefile Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
mosquitto.conf Clarify use_username_as_clientid is not global 2022-08-11 11:51:53 +01:00
NOTICE.md Update notice file. 2021-05-13 17:38:31 +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-compiling.md Add man page deps to readme. 2021-06-09 13:22:40 +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 Add Windows headless installer help. 2021-10-05 13:28:51 +01:00
README.md Add more documentation on pthread support. 2021-04-06 14:52:20 +01:00
SECURITY.md Add SECURITY.md. 2019-05-29 11:02:34 +01:00
set-version.sh Bump version, new web post 2022-08-16 13:03:44 +01:00
THANKS.txt Pointless whitespace tidy. 2021-10-05 15:20:37 +01:00
travis-configure.sh Better attempt at fixing mac travis. 2018-09-25 14:25:02 +01:00
travis-install.sh Don't update homebrew in travis, it takes an age otherwise. 2020-12-04 23:23:58 +00: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
  • cJSON - for client JSON output support. Disable with make WITH_CJSON=no Auto detected with CMake.
  • libwebsockets (libwebsockets-dev) - enable with make WITH_WEBSOCKETS=yes
  • openssl (libssl-dev on Debian based systems) - disable with make WITH_TLS=no
  • pthreads - for client library thread support. This is required to support the mosquitto_loop_start() and mosquitto_loop_stop() functions. If compiled without pthread support, the library isn't guaranteed to be thread safe.
  • uthash / utlist - bundled versions of these headers are provided, disable their use with make WITH_BUNDLED_DEPS=no
  • xsltproc (xsltproc and docbook-xsl on Debian based systems) - only needed when building from git sources - disable with make WITH_DOCS=no

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)