Go to file
Roger Light 25f458de74
Merge pull request #1487 from grom-42/fix-send-pkt
Fix test on invalid null will topic value in connect packet

Fix test on invalid reserved bit value in connect packet

Add send of pubcomp in 02-subpub-qos2 script. To keep the broker session working while launching several tests on the same broker, the last packet of this transaction must be sent.

Fix way of sending packets in compliance tests. According to the documentation of python 3 socket::send method (https://docs.python.org/3/library/socket.html#socket.socket.send), the call to send must be retry until all data is sent while sending packet with a "large" amount of data.
2019-11-06 09:49:15 +00:00
.github CLIENT_LDFLAGS now uses LDFLAGS. 2019-05-29 15:07:48 +01:00
client Fix duplicate cfg definition in rr_client. 2019-10-09 14:01:44 +01:00
doc JOSS paper. 2017-05-17 14:56:28 +01:00
docker Update docker to 1.6.7. 2019-09-25 13:35:10 +01:00
examples Merge branch 'fixes' into develop 2018-02-13 14:16:47 +00:00
installer Fix mosquitto_rr.exe not being included in Windows installers. 2019-10-29 14:41:39 +00:00
lib Fix function in wrong doc section. 2019-10-31 12:04:29 +00:00
logo Improve logo files. 2016-10-05 15:52:09 +01:00
man Don't use / in auto client ids. 2019-09-24 10:05:42 +01:00
misc/currentcost Merge branch 'master' into develop 2016-06-21 23:33:58 +01:00
security Fix apparmor profile to match debian packaging. 2014-07-28 09:22:20 +01:00
service Add ExecReload stanza to systemd units files. 2019-03-26 22:43:01 +00:00
snap Bump version number. Update www. 2019-09-25 11:30:01 +01:00
src Fix messages with an expiry interval missing the property. 2019-10-31 12:56:13 +00:00
test Fix test on invalid null will topic value in connect packet 2019-11-04 15:58:00 +01:00
www Merge branch 'fixes' 2019-09-25 12:17:33 +01:00
.gitignore Ignore SSL artifacts. 2019-09-05 15:23:53 +01:00
.travis.yml Don't allow mac build failures. 2019-04-17 10:42:11 +01: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 Add rewritten build test script and remove some build warnings. 2019-02-12 13:24:54 +00:00
ChangeLog.txt Fix messages with an expiry interval missing the property. 2019-10-31 12:56:13 +00:00
CMakeLists.txt Bump version number. Update www. 2019-09-25 11:30:01 +01:00
compiling.txt Improve broker generated client ids for the non-Linux case. 2018-12-05 16:39:45 +00:00
config.h Don't define _GNU_SOURCE where already defined. Closes #1357. 2019-07-25 21:08:00 +01:00
config.mk Allow passing LDADD to broker, client, and passwd. 2019-10-30 15:53:43 +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 Make target for building a docker image based on working dir files. 2019-05-02 09:44:02 +01:00
mosquitto.conf Remove obsolete store_clean_interval from documentation. 2019-06-06 23:04:21 +01:00
Mosquitto.podspec Change pod name to Mosquitto 2016-05-28 10:28:28 +02: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-tests.md Add make check and document testing procedure. 2019-04-26 16:25:35 +01:00
readme-windows.txt Allow other apps access to log file on Windows. 2019-07-03 11:56:46 +01:00
readme.md Fix location of readme-windows.txt 2019-08-01 10:34:56 +01:00
SECURITY.md Add SECURITY.md. 2019-05-29 11:02:34 +01:00
set-version.sh Bump version number. Update www. 2019-09-25 11:30:01 +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 Improve broker generated client ids for the non-Linux case. 2018-12-05 16:39:45 +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.txt.

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

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)