Merge branch 'master'
commit
35dea07dcd
@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# Test whether a PUBLISH to a topic starting with $ succeeds
|
||||
|
||||
import inspect, os, sys
|
||||
# From http://stackoverflow.com/questions/279237/python-import-a-module-from-a-folder
|
||||
cmd_subfolder = os.path.realpath(os.path.abspath(os.path.join(os.path.split(inspect.getfile( inspect.currentframe() ))[0],"..")))
|
||||
if cmd_subfolder not in sys.path:
|
||||
sys.path.insert(0, cmd_subfolder)
|
||||
|
||||
import mosq_test
|
||||
|
||||
rc = 1
|
||||
mid = 19
|
||||
keepalive = 60
|
||||
connect_packet = mosq_test.gen_connect("pub-dollar-test", keepalive=keepalive)
|
||||
connack_packet = mosq_test.gen_connack(rc=0)
|
||||
|
||||
publish_packet = mosq_test.gen_publish("$test/test", qos=1, mid=mid, payload="message")
|
||||
puback_packet = mosq_test.gen_puback(mid)
|
||||
|
||||
port = mosq_test.get_port()
|
||||
broker = mosq_test.start_broker(filename=os.path.basename(__file__), port=port)
|
||||
|
||||
try:
|
||||
sock = mosq_test.do_client_connect(connect_packet, connack_packet, port=port)
|
||||
mosq_test.do_send_receive(sock, publish_packet, puback_packet, "puback")
|
||||
|
||||
rc = 0
|
||||
|
||||
sock.close()
|
||||
finally:
|
||||
broker.terminate()
|
||||
broker.wait()
|
||||
(stdo, stde) = broker.communicate()
|
||||
if rc:
|
||||
print(stde)
|
||||
|
||||
exit(rc)
|
||||
|
@ -0,0 +1,26 @@
|
||||
<!--
|
||||
.. title: Updated Debian Repository Backend
|
||||
.. slug: updated-debian-repository-backend
|
||||
.. date: 2018-08-08 23:00:43 UTC+01:00
|
||||
.. tags: Packaging
|
||||
.. category:
|
||||
.. link:
|
||||
.. description:
|
||||
.. type: text
|
||||
-->
|
||||
|
||||
The backend software for administering the Debian repository at
|
||||
https://repo.mosquitto.org/ has been migrated from `reprepro` to `aptly`. This
|
||||
has the benefit of allowing multiple versions of a package to remain in the
|
||||
repository.
|
||||
|
||||
For mosquitto, this now means that old versions of the Debian packages will
|
||||
remain available even after newer versions are published, and so you can depend
|
||||
on a particular version. The recommendation is always to use the latest version
|
||||
of course.
|
||||
|
||||
This change should be transparent to all current users, but there is the
|
||||
possibility that something is different between the two repository tools. If
|
||||
you do find a problem, please let us know.
|
||||
|
||||
The repository now has builds for versions 1.4.15 and 1.5.
|
@ -0,0 +1,87 @@
|
||||
<!--
|
||||
.. title: Version 1.5.1 released
|
||||
.. slug: version-151-released
|
||||
.. date: 2018-08-16 17:01:08 UTC+01:00
|
||||
.. tags: Releases
|
||||
.. category:
|
||||
.. link:
|
||||
.. description:
|
||||
.. type: text
|
||||
-->
|
||||
|
||||
This is a bugfix release.
|
||||
|
||||
# Packaging changes
|
||||
|
||||
* The snap package now has support for websockets included.
|
||||
* The Windows packages have changed.
|
||||
- Support for Windows XP was dropped in Mosquitto 1.5, so the need for the
|
||||
Cygwin build has gone, and this has been dropped.
|
||||
- There are now 64-bit and 32-bit native packages.
|
||||
- Websockets support is included.
|
||||
- Threading support is not included in libmosquitto to simplify installation,
|
||||
alternative solutions are being looked into for the future.
|
||||
- The only external dependency is now OpenSSL.
|
||||
|
||||
# Version 1.5.1 changes
|
||||
|
||||
## Broker
|
||||
- Fix plugin cleanup function not being called on exit of the broker. Closes
|
||||
[#900].
|
||||
- Print more OpenSSL errors when loading certificates/keys fail.
|
||||
- Use `AF_UNSPEC` etc. instead of `PF_UNSPEC` to comply with POSIX. Closes
|
||||
[#863].
|
||||
- Remove use of `AI_ADDRCONFIG`, which means the broker can be used on systems
|
||||
where only the loopback interface is defined. Closes [#869], Closes [#901].
|
||||
- Fix IPv6 addresses not being able to be used as bridge addresses.
|
||||
Closes [#886].
|
||||
- All clients now time out if they exceed their keepalive\*1.5, rather than
|
||||
just reach it. This was inconsistent in two places.
|
||||
- Fix segfault on startup if bridge CA certificates could not be read.
|
||||
Closes [#851].
|
||||
- Fix problem opening listeners on Pi caused by unsigned char being default.
|
||||
Found via [#849].
|
||||
- ACL patterns that do not contain either `%c` or `%u` now produce a warning in
|
||||
the log. Closes [#209].
|
||||
- Fix bridge publishing failing when `per_listener_settings` was true. Closes
|
||||
[#860].
|
||||
- Fix `use_identity_as_username true` not working. Closes [#833].
|
||||
- Fix UNSUBACK messages not being logged. Closes [#903].
|
||||
- Fix possible endian issue when reading the `memory_limit` option.
|
||||
- Fix building for libwebsockets < 1.6.
|
||||
- Fix accessor functions for username and client id when used in plugin auth
|
||||
check.
|
||||
|
||||
## Library
|
||||
- Fix some places where return codes were incorrect, including to the
|
||||
`on_disconnect()` callback. This has resulted in two new error codes,
|
||||
`MOSQ_ERR_KEEPALIVE` and `MOSQ_ERR_LOOKUP`.
|
||||
- Fix connection problems when `mosquitto_loop_start()` was called before
|
||||
`mosquitto_connect_async()`. Closes [#848].
|
||||
|
||||
## Clients
|
||||
- When compiled using `WITH_TLS=no`, the default port was incorrectly being set
|
||||
to -1. This has been fixed.
|
||||
- Fix compiling on Mac OS X <10.12. Closes `#813` and `#240`.
|
||||
|
||||
## Build
|
||||
- Fixes for building on NetBSD. Closes `#258`.
|
||||
- Fixes for building on FreeBSD.
|
||||
- Add support for compiling with static libwebsockets library.
|
||||
|
||||
|
||||
[#209]: https://github.com/eclipse/mosquitto/issues/209
|
||||
[#240]: https://github.com/eclipse/mosquitto/issues/240
|
||||
[#258]: https://github.com/eclipse/mosquitto/issues/258
|
||||
[#813]: https://github.com/eclipse/mosquitto/issues/813
|
||||
[#833]: https://github.com/eclipse/mosquitto/issues/833
|
||||
[#848]: https://github.com/eclipse/mosquitto/issues/848
|
||||
[#849]: https://github.com/eclipse/mosquitto/issues/849
|
||||
[#851]: https://github.com/eclipse/mosquitto/issues/851
|
||||
[#860]: https://github.com/eclipse/mosquitto/issues/860
|
||||
[#863]: https://github.com/eclipse/mosquitto/issues/863
|
||||
[#869]: https://github.com/eclipse/mosquitto/issues/869
|
||||
[#886]: https://github.com/eclipse/mosquitto/issues/886
|
||||
[#900]: https://github.com/eclipse/mosquitto/issues/900
|
||||
[#901]: https://github.com/eclipse/mosquitto/issues/901
|
||||
[#903]: https://github.com/eclipse/mosquitto/issues/903
|
@ -0,0 +1,59 @@
|
||||
<!--
|
||||
.. title: Security advisory: CVE-2018-12543
|
||||
.. slug: security-advisory-cve-2018-12543
|
||||
.. date: 2018-09-27 10:36:19 UTC+01:00
|
||||
.. tags: Security,Releases
|
||||
.. category:
|
||||
.. link:
|
||||
.. description:
|
||||
.. type: text
|
||||
-->
|
||||
|
||||
Mosquitto 1.5.3 has been released to address a security vulnerability. It also
|
||||
includes other bug fixes.
|
||||
|
||||
# CVE-2018-12543
|
||||
|
||||
A vulnerability exists in Mosquitto versions 1.5 to 1.5.2 inclusive, known as
|
||||
[CVE-2018-12543].
|
||||
|
||||
If a message received by the broker has a topic that begins with `$`, but that
|
||||
does not begin `$SYS`, an assert is triggered that should otherwise not be
|
||||
accessible, causing Mosquitto to exit.
|
||||
|
||||
The issue is fixed in Mosquitto 1.5.3. Patches for older versions are
|
||||
available at <https://mosquitto.org/files/cve/2018-12543>
|
||||
|
||||
The fix addresses the problem by reverting a commit that intended to remove
|
||||
some unused checks, but also stopped part of the topic hierarchy being created.
|
||||
|
||||
# Version 1.5.3 Changes
|
||||
|
||||
The complete list of fixes addressed in version 1.5.3 is:
|
||||
|
||||
## Security
|
||||
|
||||
* Fix [CVE-2018-12543]. If a message is sent to Mosquitto with a topic that
|
||||
begins with `$`, but is not `$SYS`, then an assert that should be unreachable
|
||||
is triggered and Mosquitto will exit.
|
||||
|
||||
## Broker
|
||||
* Elevate log level to warning for situation when socket limit is hit.
|
||||
* Remove requirement to use `user root` in snap package config files.
|
||||
* Fix retained messages not sent by bridges on outgoing topics at the first
|
||||
connection. Closes [#701].
|
||||
* Documentation fixes. Closes [#520], [#600].
|
||||
* Fix duplicate clients being added to by_id hash before the old client was
|
||||
removed. Closes [#645].
|
||||
* Fix Windows version not starting if `include_dir` did not contain any files.
|
||||
Closes [#566].
|
||||
|
||||
## Build
|
||||
* Various fixes to ease building.
|
||||
|
||||
[CVE-2018-12543]: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-12543
|
||||
[#520]: https://github.com/eclipse/mosquitto/issues/520
|
||||
[#566]: https://github.com/eclipse/mosquitto/issues/566
|
||||
[#600]: https://github.com/eclipse/mosquitto/issues/600
|
||||
[#645]: https://github.com/eclipse/mosquitto/issues/645
|
||||
[#701]: https://github.com/eclipse/mosquitto/issues/701
|
@ -0,0 +1,40 @@
|
||||
<!--
|
||||
.. title: Version 1.5.2 released
|
||||
.. slug: version-152-released
|
||||
.. date: 2018-09-19 18:18:36 UTC+01:00
|
||||
.. tags: Releases
|
||||
.. category:
|
||||
.. link:
|
||||
.. description:
|
||||
.. type: text
|
||||
-->
|
||||
|
||||
This is a bugfix release.
|
||||
|
||||
# Version 1.5.2 changes
|
||||
|
||||
## Broker
|
||||
- Fix build when using `WITH_ADNS=yes`.
|
||||
- Fix incorrect call to setsockopt() for `TCP_NODELAY`. Closes [#941].
|
||||
- Fix excessive CPU usage when the number of sockets exceeds the system limit.
|
||||
Closes [#948].
|
||||
- Fix for bridge connections when using `WITH_ADNS=yes`.
|
||||
- Fix `round_robin false` behaviour. Closes [#481].
|
||||
- Fix segfault on HUP when bridges and security options are configured.
|
||||
Closes [#965].
|
||||
|
||||
## Library
|
||||
- Fix situation where username and password is used with SOCKS5 proxy. Closes
|
||||
[#927].
|
||||
- Fix SOCKS5 behaviour when passing IP addresses. Closes [#927].
|
||||
|
||||
## Build
|
||||
- Make it easier to build without bundled uthash.h using `WITH_BUNDLED_DEPS=no`.
|
||||
- Fix build with OPENSSL_NO_ENGINE. Closes [#932].
|
||||
|
||||
[#481]: https://github.com/eclipse/mosquitto/issues/481
|
||||
[#927]: https://github.com/eclipse/mosquitto/issues/927
|
||||
[#932]: https://github.com/eclipse/mosquitto/issues/932
|
||||
[#941]: https://github.com/eclipse/mosquitto/issues/941
|
||||
[#948]: https://github.com/eclipse/mosquitto/issues/948
|
||||
[#965]: https://github.com/eclipse/mosquitto/issues/965
|
Loading…
Reference in New Issue