Commit Graph

41 Commits

Author SHA1 Message Date
Roger A. Light
638ab2f969 Fix unexpected behaviour when reusing a mid after a publish is denied. 2019-04-10 22:33:31 +01:00
Roger A. Light
da84b9a983 Restrict what packets are allowed in what client state. 2019-04-03 20:46:21 +01:00
Roger A. Light
8097ec24f9 Fix some property leaks. 2019-04-03 11:23:31 +01:00
Roger A. Light
75c2a39d2c Send topic alias maximum from the broker. 2019-03-27 17:38:35 +00:00
Roger A. Light
320ddc1303 Merge branch 'master'
Conflicts:
	CMakeLists.txt
	ChangeLog.txt
	client/Makefile
	config.mk
	installer/mosquitto.nsi
	installer/mosquitto64.nsi
	lib/mosquitto.h
	lib/mqtt3_protocol.h
	lib/util_mosq.c
	set-version.sh
	snap/snapcraft.yaml
	src/bridge.c
	src/database.c
	src/handle_connack.c
	src/loop.c
	src/persist.c
	test/broker/Makefile
2019-03-16 10:05:38 +00:00
Roger A. Light
105ad17dc6 Tests and support for QoS 1 reporting of no subscribers on publish. 2019-03-04 07:36:35 +00:00
Roger A. Light
6a1ac70ee6 Disallow writing to $ topics where appropriate. 2019-03-03 22:00:30 +00:00
Roger A. Light
ce31269e05 Update changelog, bump version, bump copyright year. 2019-02-28 16:56:15 +00:00
Roger A. Light
3b6b6d5fa8 Test improvements
And some related fixes.
2019-02-27 09:27:34 +00:00
Roger A. Light
c506c8335b Will delay tests and implementation. 2019-02-27 09:27:34 +00:00
Roger A. Light
084062c85e Merge branch 'fixes' into mqtt5 2019-02-12 17:05:42 +00:00
Roger A. Light
1c075988ca Log message for disconnecting a client with invalid UTF-8 topic.
Closes #1144. Thanks to Kris Mattheus.
2019-02-08 13:01:07 +00:00
Roger Light
c40957a7d8 Fix and tests for CVE-2018-12546. 2019-02-08 13:01:07 +00:00
Roger A. Light
873ffce27a Send DISCONNECT on invalid topic alias, plus test. 2019-01-25 22:53:31 +00:00
Roger A. Light
f9a17e2782 Add alias support to the broker. 2019-01-18 21:30:34 +00:00
Roger A. Light
326292681a Add maximum-qos support to broker and client.
This comes in the form of:

* Per listener maximum_qos option, which can be in the range 0-2.
* Changes to mosquitto_publish*() to return MOSQ_ERR_QOS_NOT_SUPPORTED
  if attempting to publish with a higher QoS than supported.
* Bridges will downgrade messages to match the maximum QoS.

More tests on the broker side (specifically bridges) are required. This
needs bridge support for MQTT 5 first.
2019-01-09 18:03:01 +00:00
Roger A. Light
7c3666d593 Subscription identifier support. 2018-12-20 15:32:43 +00:00
Roger A. Light
9896e61727 Test and small fix for response-topic and correlation-data props. 2018-12-06 09:29:25 +00:00
Roger Light
9560c5bac7 Add retain_available support. 2018-11-22 18:21:40 +00:00
Roger A. Light
f77c1ca91b private struct mqtt5__property -> public mosquitto_property. 2018-11-01 23:50:54 +00:00
Roger A. Light
80f526a5e5 Message Expiry Interval support. 2018-11-01 21:51:35 +00:00
Roger A. Light
4ca83c1768 Fix leak when handling publish props. 2018-11-01 16:50:23 +00:00
Roger A. Light
636e813d1c Load of constant renames ahead of making mqtt_protocol.h public. 2018-10-30 11:11:31 +00:00
Roger A. Light
9eebcf6704 Rename property__free_all->mosquitto_property_free_all
Make public function.
2018-10-30 10:16:42 +00:00
Roger A. Light
12fa336140 Handle some incoming PUBLISH properties.
PAYLOAD_FORMAT_INDICATOR, CORRELATION_DATA, USER_PROPERTY, CONTENT_TYPE
are now all passed on to subscribing clients from an incoming PUBLISH
only (not from Wills). The other PUBLISH properties are silently
dropped.
2018-10-25 16:35:24 +01:00
Roger A. Light
ca40255720 mid == 0 is a protocol error. 2018-10-25 12:12:57 +01:00
Roger A. Light
723d9c2782 Check whether properties are on the correct commands. 2018-10-25 11:23:04 +01:00
Roger A. Light
267178bd99 User properties are copied from PUBLISH to PUBLISH. 2018-10-25 10:24:19 +01:00
Roger A. Light
f4b2838574 Property reading, and tests for byte properties. 2018-10-04 17:18:57 +01:00
Roger A. Light
400db91166 Handle UTF-8 validation in packet__read_string. 2018-10-03 15:04:24 +01:00
Roger A. Light
1488992ea8 Naive reading of MQTT 5 properties. No processing done. 2018-10-02 16:43:40 +01:00
Roger A. Light
0bacff11df Rename mqtt3_protocol.h -> mqtt_protocol.h. 2018-09-19 10:58:12 +01:00
Roger A. Light
88765a5e80 Consistent use of config.h across the project. 2018-08-16 11:14:51 +01:00
Tobias Assarsson
cc96485330 Add missing parameters to internal mosquitto_acl_check
Signed-off-by: Tobias Assarsson <tobias.assarsson@gmail.com>
2018-08-09 13:05:35 +01:00
Roger A. Light
729a09310a Add UTF-8 tests, plus some validation fixes.
Closes #693.
2018-04-12 22:20:10 +01:00
Roger A. Light
f4d238be18 Bump copyright years. 2018-04-11 15:24:29 +01:00
Roger A. Light
3066f89a24 packet__read_string() returns the string length. 2018-02-11 20:47:17 +00:00
Roger A. Light
d3239920d7 Validate UTF-8 client ids, usernames and topics. 2017-08-16 11:28:54 +01:00
Roger A. Light
017db6706f Rename mosquitto_broker.h -> mosquitto_broker_internal.h 2016-07-08 10:10:04 +01:00
Roger A. Light
8378fe44cf Update copyrights. 2016-07-08 09:42:24 +01:00
Roger A. Light
db2e66c543 Reorganise functions into separate files as appropriate. 2016-03-12 21:49:48 +00:00