Commit Graph

172 Commits

Author SHA1 Message Date
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
7b002abd7e Sort tests. 2019-03-03 22:07:44 +00:00
Roger A. Light
7448f0cab8 Update merged tests. 2019-03-03 22:04:22 +00:00
Roger A. Light
6a1ac70ee6 Disallow writing to $ topics where appropriate. 2019-03-03 22:00:30 +00:00
Roger A. Light
7207041428 Fix delayed bridge local subs causing missing messages.
Closes #1174. Thanks to beville.

Bug: https://github.com/eclipse/mosquitto/issues/1174
2019-02-28 15:38:15 +00:00
Roger A. Light
36f10c7623 Update tests to not use TLS 1.0. 2019-02-28 12:08:26 +00:00
Roger A. Light
91a2932e25 Add missing test. 2019-02-27 09:37:02 +00:00
Roger A. Light
b2c0c3d573 Handle DISCONNECT with will. 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
c3c8c99f5d Fix dropping oversize messages for QoS>0. 2019-02-21 08:31:54 +00:00
Roger A. Light
1d17ced449 Broker configurable max_packet_size
Plus tests.
2019-02-19 15:57:20 +00:00
Roger A. Light
1877f8a326 Tests and implementation for maximum packet size.
This is for broker outgoing connack and publish packets only.
2019-02-18 19:50:51 +00:00
Roger A. Light
8db16591fa Test and fix for subscription identifiers not being updated.
Closes #1169. Thanks to Christoph Krey.
2019-02-18 12:24:19 +00:00
Roger A. Light
1479c57e34 v5 report reason code=no sub when unsubscribing. 2019-02-17 10:14:02 +00:00
Roger A. Light
1ec0cea34a Fix missing reason_code on v5 UNSUBACK.
Closes #1167. Thanks to Christoph Krey.
2019-02-17 09:30:06 +00:00
Roger A. Light
5e8199323b Fix clients being disconnected when ACLs are in use.
This only affects the case where a client connects using a username, and
the anonymous ACL list is defined but specific user ACLs are not
defined.

Closes #1162. Thanks to quonb.
2019-02-14 17:46:01 +00:00
Roger A. Light
f9f3fdbfe3 Fix pattern matching test. 2019-02-13 12:05:43 +00:00
Roger A. Light
d5dfd575b3 Fix broker TLS tests. 2019-02-13 11:51:52 +00:00
Roger A. Light
baa4642bd3 Generic ptest implementation. 2019-02-12 19:06:14 +00:00
Roger A. Light
b4a94f5900 Fix some ssl tests. 2019-02-12 18:51:19 +00:00
Roger A. Light
950ad8d16f Speed up pattern matching test. 2019-02-12 18:29:05 +00:00
Roger A. Light
016ce7dca5 Simplify ptest implementation. 2019-02-12 18:28:54 +00:00
Roger A. Light
e2f269bda8 Test duration printing on ptest. 2019-02-12 17:12:38 +00:00
Roger A. Light
084062c85e Merge branch 'fixes' into mqtt5 2019-02-12 17:05:42 +00:00
Roger Light
c40957a7d8 Fix and tests for CVE-2018-12546. 2019-02-08 13:01:07 +00:00
Roger A. Light
d8505624d0 Fix and tests for security bug #541870. 2019-02-08 13:01:07 +00:00
Roger A. Light
36b5421c59 Fix and tests for security bug #543401. 2019-02-08 13:01:07 +00:00
Roger Light
5236295159 Handle mismatched handshakes properly.
For example, a QoS1 PUBLISH with QoS2 reply.
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
219f47b07f Add test for multiple unsubscribe. 2019-01-25 21:38:33 +00:00
Roger A. Light
6b977fa198 Test and fixes for expiring retained messages. 2019-01-23 10:00:13 +00:00
Roger A. Light
ca3782b38d Test and fixes for will message expiry interval. 2019-01-22 17:51:57 +00:00
Roger A. Light
6a59e92db8 Set remaining message expiry interval when republishing. 2019-01-22 12:43:52 +00:00
Roger A. Light
0a9885aea1 Rename "resv" in connack to "flags" to better match v5 spec. 2019-01-22 12:12:18 +00:00
Roger A. Light
f9a17e2782 Add alias support to the broker. 2019-01-18 21:30:34 +00:00
Roger Light
8513af4da5 Tests and fixes for shortened DISCONNECT packets. 2019-01-17 18:51:23 +00:00
Roger Light
4b97a90ef9 Tests and fixes for truncated PUB* packets
For the cases where reason_code is 0, or properties are missing.
2019-01-17 17:24:31 +00:00
Roger Light
740a128769 Support PUBREC reason code >=0x80 as partial qos2 flow. 2019-01-09 15:00:12 +00:00
Roger Light
9aec82b0e1 Finalise test proplists in the packet gen funcs.
This makes it easier to add part of a proplist in the test itself, and have the gen func add some more.
2019-01-08 18:37:38 +00:00
Roger A. Light
6eefb45b44 Broker tests for Receive Maximum. 2019-01-03 23:32:39 +00:00
Roger A. Light
c1baf21185 Add tests for subscription identifiers. 2018-12-23 21:39:15 +00:00
Roger A. Light
ef724e6d33 Add test for first packet not being CONNECT. 2018-12-19 22:17:56 +00:00
Roger A. Light
dab6452a1d Add test for duplicate CONNECT. 2018-12-19 22:17:39 +00:00
Roger A. Light
fcf4cd0b27 Merge branch 'master' into mqtt5 2018-12-19 14:11:11 +00:00
Roger A. Light
31e6dbbe74 Tests and fixes for subscription options. 2018-12-19 12:54:04 +00:00
Roger A. Light
608b8d33e7 Remove no longer used file. 2018-12-06 10:55:58 +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 A. Light
6ef2c79e9a Add max_keepalive, for limiting keepalives of MQTT v5 clients. 2018-12-06 08:49:02 +00:00
Roger A. Light
fda66e8311 Add broker test for assigned client id. 2018-12-05 20:26:43 +00:00
Roger A. Light
f01042fb97 Simplify test makefiles. 2018-12-05 13:53:00 +00:00
Roger A. Light
085fdf3593 Add tests for Content Type property sending. 2018-12-05 13:28:26 +00:00
Roger A. Light
d5108956bf Process session-expiry-interval on CONNECT and DISCONNECT.
Add test to check for invalid values.
2018-11-27 12:23:21 +00:00
Roger A. Light
34e7da426c Use test helper for importing modules. 2018-11-27 11:26:21 +00:00
Roger A. Light
3647dc357a Test for retain_available=false. 2018-11-22 21:32:49 +00:00
Roger A. Light
d7bcec4878 Don't disconnect clients when a plugin denies SUBSCRIBE.
Thanks to Ibrahim Koujar.

Bug: https://github.com/eclipse/mosquitto/issues/1016
2018-11-07 10:06:32 +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
6996fd450a Simple pub/sub/unsub tests for v5. 2018-10-25 14:57:41 +01:00
Roger A. Light
52c25fa899 Simple connect test for v5. 2018-10-25 14:43:43 +01:00
Roger A. Light
9df05e93c0 Add test for $test publishing bug. 2018-09-25 14:25:54 +01:00
Roger A. Light
f6f509031a Add missing test. 2018-08-16 23:23:56 +01:00
Roger A. Light
11395f9852 Fix accessor functions for username and client id when used in plugin auth check. 2018-08-16 17:00:00 +01:00
Roger A. Light
6a75eb377b Add test for issue in #828.
Signed-off-by: Roger A. Light <roger@atchoo.org>
2018-08-09 13:01:34 +01:00
Roger A. Light
7c496153a9 Add test for issue 505. 2018-08-09 11:24:45 +01:00
Roger A. Light
50abaedaff Add new test to parallel test script.
Signed-off-by: Roger A. Light <roger@atchoo.org>
2018-08-08 13:49:12 +01:00
Wolfgang Hottgenroth
50b0c0b1f1 Add test which currently fails.
Signed-off-by: Wolfgang Hottgenroth <wolfgang.hottgenroth@icloud.com>
2018-08-08 13:42:50 +01:00
Wolfgang Hottgenroth
9912418f78 Change test scripts according to hints in #507 (replace localhost by 127.0.0.1)
Signed-off-by: Wolfgang Hottgenroth <wolfgang.hottgenroth@icloud.com>
2018-08-08 13:42:50 +01:00
Roger A. Light
f40ccd195d Disable queued bytes test pending a fix.
Signed-off-by: Roger A. Light <roger@atchoo.org>
2018-08-02 00:35:00 +01:00
Roger A. Light
9fd55c0d44 Simplify broker tests with helper function. 2018-08-01 22:51:19 +01:00
Roger A. Light
40e2eab4c4 Disable queued bytes test temporarily. 2018-08-01 21:36:58 +01:00
Roger A. Light
cd271041f5 Add test for issue #874. 2018-08-01 19:26:12 +01:00
Roger A. Light
5d2f5c25d7 Experimental parallel testing for broker. 2018-04-15 23:38:18 +01:00
Roger A. Light
51aa7b7121 Update tests as a step towards parallelism. 2018-04-13 22:04:40 +01:00
Roger A. Light
8cb3a29fd7 Fix a variety of protocol handling errors.
Closes #704
Closes #705
Closes #730
Closes #732

Thanks to Umberto Boscolo.
2018-04-13 12:41:34 +01:00
Roger A. Light
7615ae24ce Handle CONNECT protocol errors.
Don't allow username when no username flag set.
Don't allow password when no password flag set.

Closes #730. Closes #731.

Thanks to Umberto Boscolo.
2018-04-12 22:53:49 +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
24d68b5af8 Remove support for openssl 1.0.0 and 1.0.1.
These are no longer supported by openssl.
2018-04-11 17:12:25 +01:00
Roger A. Light
40e6a75709 Use c99 as compiling standard.
Closes: #765.
2018-04-06 00:33:22 +01:00
Roger A. Light
c3314fd593 Add missing tests (Closes #748). 2018-04-05 23:57:03 +01:00
Roger A. Light
dbdd113c86 Merge branch 'develop' of github.com:eclipse/mosquitto into develop 2018-03-26 22:57:32 +01:00
Roger A. Light
a979ed6535 Per listener plugins. 2018-03-26 15:23:00 +01:00
Pierre Fersing
6dd63d3000 Add more test for auth-plugin
Tests for:

* MOSQ_ACL_SUBSCRIBE acl check
* MOSQ_ERR_PLUGIN_DEFER with 2 auth-plugin
* Binary compatibility with v2 of auth-plugin

Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
2018-03-13 17:52:22 +00:00
Roger A. Light
81cb7ab547 Merge branch 'fixes' into develop 2018-02-13 14:16:47 +00:00
Tatsuzo Osawa
024fd400d4 Fix Unsubscribe with No Topic
Signed-off-by: Tatsuzo Osawa <tatsuzo.osawa@gmail.com>
2018-01-06 12:11:06 +00:00
Pierre Fersing
7775924bae [534]Fix upgrade_outgoing_qos for retained message 2018-01-03 18:50:34 +01:00
Pierre Fersing
a47c1a821b Add test for bridge topic name mapping
Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
2017-12-29 16:59:39 +01:00
Roger A. Light
d2118aeb17 [636] Don't run TLS-PSK tests when disabled at compile time.
Thanks to 'TBK'.

Bug: https://github.com/eclipse/mosquitto/issues/636
2017-12-03 21:20:40 +00:00
Tatsuzo Osawa
355bb37ab9 Fix 08-ssl-bridge.conf to dial localhost by ipv4.
Signed-off-by: Tatsuzo Osawa <tatsuzo.osawa@gmail.com>
2017-08-09 21:25:32 +01:00
Roger A. Light
a480a9daf9 Fix 08-ssl-bridge.py test when using async dns lookups.
Thanks to Tatsuzo Osawa.

Bug: https://github.com/eclipse/mosquitto/issues/507
2017-07-30 11:35:45 +01:00
Pierre Fersing
31639fec65 Add test for persistent subscription (#501)
Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
2017-07-20 19:02:55 +01:00
Roger A. Light
e74203de2c Merge branch 'master' into develop 2017-07-16 22:52:01 +01:00
Roger A. Light
96db6d6644 Fix CONNECT check for reserved=0, as per MQTT v3.1.1 check MQTT-3.1.2-3. 2017-06-27 11:11:43 +01:00
Roger A. Light
41a1b51c31 Print warning, skip test if paho-mqtt not available. 2016-09-10 09:11:26 +01:00
Karl Palsson
c6aac741c2 broker: support byte based queueing
Limiting queued message depth purely based on message count is hard to
control for memory constrained devices.  The size of messages can vary
wildly, from a few bytes, to a few kilobytes.  Support a new
max_queued_bytes option, and drop packets when the first limit is
reached.  Option defaults to 0 (disabled) by default.
Support also a max_inflight_bytes variable, with similar behaviour.

Fixes (partof) https://github.com/eclipse/mosquitto/issues/100

This pulls up some helper routines for calculating whether to allow
inflight or queuing, resolving some inconsistences in connection
resumption.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2016-09-09 17:27:39 +00:00
Roger A. Light
883af8af53 Better subtree searching. 2016-07-19 15:05:53 +01:00
Roger A. Light
e4db6a760f Backwards compatibility for auth plugins. 2016-07-10 23:17:30 +01:00
Roger A. Light
025e56fd4c New mosquitto_auth_psk_key_get() 2016-07-08 13:52:02 +01:00
Roger A. Light
b3df015ea7 New mosquitto_unpwd_check(). 2016-07-08 13:27:14 +01:00
Roger A. Light
63f46a999f Add username accessor. 2016-07-08 11:50:50 +01:00
Roger A. Light
6a6efb6143 Fix ssl bridge test. 2016-06-22 11:04:49 +01:00
Roger A. Light
2b2279363b Bridge defaults to mqtt3.1.1 as per documentation. 2016-06-22 00:04:47 +01:00