Commit Graph

424 Commits (fd0e39846023af89c09f03b460528f9768720785)

Author SHA1 Message Date
Roger A. Light 3e094991c4 Hopeful fix for travis. 6 years ago
Roger A. Light e479a80cbe Extra test for issue 1401. 6 years ago
Roger A. Light 1066750931 Restrict topic hierarchy to 200 levels to prevent possible stack overflow.
Closes #1412. Thanks to Ryan Shaw.
6 years ago
Roger A. Light 9bbf5bb65f Fix 11-message-expiry test when running under valgrind 6 years ago
Roger A. Light 367fc0cffc Updated SSL test files, plus a new empty crl file. 6 years ago
Roger A. Light 3c35c6cdd9 Fix Will not being sent if will delay greater than session expiry.
Closes #1401. Thanks to Will Lisac.
6 years ago
Roger A. Light f6b22f8248 Fix clients using `use_identity_as_*` being disconnected on SIGHUP.
Closes #1402. Thanks to twegener-embertec.
6 years ago
Roger A. Light be07c842d1 Don't error trying to cleanup missing persistence file. 6 years ago
Roger A. Light 50695f8103 Fix v5 DISCONNECT packets with remaining length == 2.
These were being treated as a protocol error.

Closes #1367. Thanks to Frank Pagliughi.
6 years ago
Roger A. Light efc8ed39af Fix incoming msgs not being removed when there are no subs
Fix incoming messages not being removed for a client if the topic being
published to does not have any subscribers.

Closes #1322. Thanks to Yannic Schröder.
6 years ago
Roger A. Light 696a9b8019 Fix incomgin QoS 2 with max_inflight_messages set to 1.
Closes #1332. Thanks to xmas79.
6 years ago
Roger A. Light 552059e17d Pedantic test fixes from failgrind. 6 years ago
Roger A. Light f14a47c015 Further attempt 6 years ago
Roger A. Light 18b897e5e3 Attempt to fix 11-message-expiry for travis. 6 years ago
Roger A. Light de695af8c0 Fix zero length client ids being rejected for MQTT v5 clients.
This was happening when clean start was set to true.
6 years ago
Roger A. Light e51e40e95c Fix incorrect shared subscription topic of '$shared.' 6 years ago
Roger A. Light e43a278652 Fix test compilation. 6 years ago
Roger A. Light 999c478c88 Fixes for bug #1273
* Fix Will message for a persistent client incorrectly being sent when the client reconnects after a clean disconnect.
* Fix Will message for a persistent client not being sent on disconnect.
* Fix mosquitto_pub not using the `-c` option.

Thanks to Yannic Schröder.

Closes #1273.
6 years ago
Roger A. Light 41cb9bf750 Simplify ping checking in tests. 6 years ago
Roger A. Light cd3877e628 Fix detection of incoming v3.1/v3.1.1 bridges.
Closes #1263. Thanks to vrst37.
6 years ago
Roger A. Light f64d3b1e5c Fix broker originated messages not being sent.
This occurred when `check_retain_source` was set to true.

Closes #1245. Thanks to Christoph Krey.
7 years ago
Roger A. Light ab77b5c000 Test for Will property usage. 7 years ago
Roger A. Light 3b4a5419c3 Build fixes around CFLAGS et al.
- Split CFLAGS and CPPFLAGS, and LDFLAGS and LDADD/LIBADD.
- test/unit now respects CPPFLAGS and LDFLAGS.

Closes #1232. Thanks to Greg Troxel.
7 years ago
Roger A. Light d6c7923d16 Add `make check` and document testing procedure.
Also support test target in cmake.
7 years ago
Roger A. Light 17eae08c5e Test build fixes. 7 years ago
Roger A. Light 56757df512 Bump version and changelog details. 7 years ago
Roger A. Light 689989cc56 Fix inflight quota inc/dec for both broker and library. 7 years ago
Roger A. Light 8531cb1d79 Separate broker message queues into in/out.
This allows and includes better flow control handling for QoS>0.
7 years ago
Roger A. Light 8b532705d9 Fix test datatype. 7 years ago
Roger A. Light 969885d967 Crude random client testing
This needs a lot of improvement, but is a reasonable start.
7 years ago
Roger A. Light 638ab2f969 Fix unexpected behaviour when reusing a mid after a publish is denied. 7 years ago
Roger A. Light 052c2ffa05 Clean unit test directory. 7 years ago
Roger A. Light 2e7dcee342 Multistep auth, plus reauth, plus tests. 7 years ago
Roger A. Light c1776a0b39 Add reauth parameter for extended auth. 7 years ago
Roger A. Light 0f6e51d582 Code and tests for returning single stage auth data back to client. 7 years ago
Roger A. Light 494f35bd8d Add mosquitto_set_username() plugin function. 7 years ago
Roger A. Light a29a7dadc6 Basic plugin support for single step extended auth. 7 years ago
Roger A. Light 2fcf246f07 Fix potential crashes on memory alloc failure in tests only. 7 years ago
Roger A. Light fb8a2baaad Refactor client msgs to use utlist to reduce code complexity. 7 years ago
Roger A. Light fe854d3a64 Refactor handle__connect() ahead of extended auth changes. 7 years ago
Roger A. Light 636d0f1f74 Fix printing on broker tests. 7 years ago
Roger A. Light a8dce08618 Always kill broker on failure. 7 years ago
Roger A. Light 950dabcf9b Test for leaking will on connect denied. 7 years ago
Roger A. Light e5f58a8ff3 Test for unsupported extended auth. 7 years ago
Roger A. Light 0d7523c309 Use helpers in all tests. 7 years ago
Roger A. Light 7e49d91898 Convert tests to Python 3 7 years ago
Roger A. Light 75c2a39d2c Send topic alias maximum from the broker. 7 years ago
Roger A. Light 2a5995106a Fix Coverity Scan defect 140436. Null dereference. 7 years ago
Roger A. Light 43c159b9a5 Support and tests for saving message expiry interval. 7 years ago
Roger A. Light 5f0cb3a44c Possible fix for errant test. 7 years ago
Roger A. Light 61fe26474e Test and fix for client message prop persistence. 7 years ago
Roger A. Light 5841da2c36 Tests for persisting message store properties. 7 years ago
Roger A. Light efb20625fb Code and tests for persisting client msg properties. 7 years ago
Roger A. Light 48253bc12c Persist message store publish properties. 7 years ago
Roger A. Light 2f15a7be2b Add subscription-identifier and options to persistence. 7 years ago
Roger A. Light 214a5f3aab v5 persistence file format
This includes changes to improve read/write performance.
It is not complete, and will have further changes to add properties and anything else required for MQTT v5.
7 years ago
Roger A. Light e249ca7e91 Separate the persistence actual writing functions. 7 years ago
Roger A. Light 7a53b28080 Start of persistence writing tests. 7 years ago
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
7 years ago
Roger A. Light a7d0660749 Separate out persist reading code from restoring code. 7 years ago
Roger A. Light 9411d94842 Start of tests for persistence reading. 7 years ago
Roger A. Light c944f840a6 Don't advertise shared subs as unavailable any more. 7 years ago
Roger Light 8a8d13cf96 Shared subscription support. 7 years ago
Roger A. Light 2ea97a6cd9 Check for authentication method on CONNECT, and reject. 7 years ago
Roger A. Light ac91144495 Session expiry interval support - not working for file persistence. 7 years ago
Roger A. Light 105ad17dc6 Tests and support for QoS 1 reporting of no subscribers on publish. 7 years ago
Roger A. Light 7b002abd7e Sort tests. 7 years ago
Roger A. Light 7448f0cab8 Update merged tests. 7 years ago
Roger A. Light 6a1ac70ee6 Disallow writing to $ topics where appropriate. 7 years ago
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
7 years ago
Roger A. Light 36f10c7623 Update tests to not use TLS 1.0. 7 years ago
Roger A. Light 571c643b3d More C90 fixes for travis. 7 years ago
Roger A. Light 72941db546 Coverity fixes
1399064
1399065
1398655
1398656
1398654
1399067
1399066
1399063
1399060
1399059
1399068
1399062
1398657
1398653
1302848
1302847
1399070
7 years ago
Roger A. Light 91a2932e25 Add missing test. 7 years ago
Roger A. Light b2c0c3d573 Handle DISCONNECT with will. 7 years ago
Roger A. Light 3b6b6d5fa8 Test improvements
And some related fixes.
7 years ago
Roger A. Light c506c8335b Will delay tests and implementation. 7 years ago
Roger A. Light 5aabc171b0 Merge branch 'mqtt5' into develop 7 years ago
Roger A. Light c3c8c99f5d Fix dropping oversize messages for QoS>0. 7 years ago
Roger A. Light 1d17ced449 Broker configurable max_packet_size
Plus tests.
7 years ago
Roger A. Light b9b8e0ff2a Add client support for outgoing maximum packet size. 7 years ago
Roger A. Light 1877f8a326 Tests and implementation for maximum packet size.
This is for broker outgoing connack and publish packets only.
7 years ago
Roger A. Light 8db16591fa Test and fix for subscription identifiers not being updated.
Closes #1169. Thanks to Christoph Krey.
7 years ago
Roger A. Light 66c1e2ccf0 Add mosquitto_unsubscribe_multiple(), plus tests. 7 years ago
Roger A. Light c823073be6 v5 unsubscribe test, single topic. 7 years ago
Roger A. Light 1479c57e34 v5 report reason code=no sub when unsubscribing. 7 years ago
Roger A. Light 1ec0cea34a Fix missing reason_code on v5 UNSUBACK.
Closes #1167. Thanks to Christoph Krey.
7 years ago
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.
7 years ago
Roger A. Light f9f3fdbfe3 Fix pattern matching test. 7 years ago
Roger A. Light d5dfd575b3 Fix broker TLS tests. 7 years ago
Roger A. Light baa4642bd3 Generic ptest implementation. 7 years ago
Roger A. Light b4a94f5900 Fix some ssl tests. 7 years ago
Roger A. Light 950ad8d16f Speed up pattern matching test. 7 years ago
Roger A. Light 016ce7dca5 Simplify ptest implementation. 7 years ago
Roger A. Light e2f269bda8 Test duration printing on ptest. 7 years ago
Roger A. Light 084062c85e Merge branch 'fixes' into mqtt5 7 years ago
Roger A. Light bb914b985c Fix `mosquitto_topic_matches_sub()` rc with sub=="topic/#abc".
This now returns MOSQ_ERR_INVAL as expected.
7 years ago
Roger A. Light b6fb2c5824 Fix property write test after function changes. 7 years ago
Roger Light c40957a7d8 Fix and tests for CVE-2018-12546. 7 years ago
Roger A. Light d8505624d0 Fix and tests for security bug #541870. 7 years ago
Roger A. Light 36b5421c59 Fix and tests for security bug #543401. 7 years ago
Roger Light 5236295159 Handle mismatched handshakes properly.
For example, a QoS1 PUBLISH with QoS2 reply.
7 years ago
Roger A. Light 873ffce27a Send DISCONNECT on invalid topic alias, plus test. 7 years ago
Roger A. Light 219f47b07f Add test for multiple unsubscribe. 7 years ago
Roger A. Light 6b977fa198 Test and fixes for expiring retained messages. 7 years ago
Roger A. Light ca3782b38d Test and fixes for will message expiry interval. 7 years ago
Roger A. Light 6a59e92db8 Set remaining message expiry interval when republishing. 7 years ago
Roger A. Light 0a9885aea1 Rename "resv" in connack to "flags" to better match v5 spec. 7 years ago
Roger A. Light f9a17e2782 Add alias support to the broker. 7 years ago
Roger A. Light 1cc3e558ee Test for server keepalive. 7 years ago
Roger Light 8513af4da5 Tests and fixes for shortened DISCONNECT packets. 7 years ago
Roger Light 4b97a90ef9 Tests and fixes for truncated PUB* packets
For the cases where reason_code is 0, or properties are missing.
7 years ago
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.
7 years ago
Roger Light 930a314caf Add reason_code to on_publish_v5 callback. 7 years ago
Roger Light 740a128769 Support PUBREC reason code >=0x80 as partial qos2 flow. 7 years ago
Roger Light 6119f83571 Add receive-maximum=1 test for client. 7 years ago
Roger A. Light aeba5b5d0d Fix and tests for client side receive-maximum. 7 years ago
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.
7 years ago
Roger Light 67c1d4453e Receive maximum support for clients. 7 years ago
Roger A. Light 6eefb45b44 Broker tests for Receive Maximum. 7 years ago
Roger A. Light 00c4fd137a More UTF-8 tests. 7 years ago
Roger A. Light c1baf21185 Add tests for subscription identifiers. 7 years ago
Roger A. Light 7c3666d593 Subscription identifier support. 7 years ago
Roger A. Light ef724e6d33 Add test for first packet not being CONNECT. 7 years ago
Roger A. Light dab6452a1d Add test for duplicate CONNECT. 7 years ago
Roger A. Light fcf4cd0b27 Merge branch 'master' into mqtt5 7 years ago
Roger A. Light 31e6dbbe74 Tests and fixes for subscription options. 7 years ago
Roger A. Light 94fdc9cb44 Disallow UTF-8 control characters. 7 years ago
Roger A. Light bc1349c0d7 Tests for user facing mosquitto_string_to_property_info function. 7 years ago
Roger A. Light 8b368aeb6b Fix memory leaks in tests. 7 years ago
Roger A. Light 699e5c762f Tests for user facing read functions. 7 years ago
Roger A. Light 679a9a54a5 Tests for user facing property add functions. 7 years ago
Roger A. Light 1e6117bcf5 Fix duplicate string property tests. 7 years ago
Roger A. Light 4fe75b1af0 Make user functions for reading properties easier to use. 7 years ago
Roger A. Light 608b8d33e7 Remove no longer used file. 7 years ago
Roger A. Light 9896e61727 Test and small fix for response-topic and correlation-data props. 7 years ago
Roger A. Light 6ef2c79e9a Add max_keepalive, for limiting keepalives of MQTT v5 clients. 7 years ago
Roger A. Light fda66e8311 Add broker test for assigned client id. 7 years ago
Roger A. Light f01042fb97 Simplify test makefiles. 7 years ago
Roger A. Light 085fdf3593 Add tests for Content Type property sending. 7 years ago
Roger A. Light d5108956bf Process session-expiry-interval on CONNECT and DISCONNECT.
Add test to check for invalid values.
7 years ago
Roger A. Light 34e7da426c Use test helper for importing modules. 7 years ago
Roger A. Light c31aae25a8 Fix v5 tests with no CONNECT properties. 7 years ago
Roger A. Light 3647dc357a Test for retain_available=false. 7 years ago
Roger A. Light 0123ff1efe Rename *_with_properties() -> *_v5(). 7 years ago
Roger Light 17d213b79a Declare lack of support for shared subs and sub IDs. 7 years ago
Roger A. Light 29cf4266d9 Remove old tests from ptest.py. 7 years ago
Roger A. Light bb745b3308 Client prop test for format-payload-indicator. 7 years ago
Roger A. Light 22f284671d Request-response test with/without correlation data 7 years ago
Roger A. Light 353990e856 Tidy up test directory. 7 years ago
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
7 years ago
Roger A. Light c26892244c Test x509 generation script requires no interaction now. 7 years ago
Roger A. Light f77c1ca91b private struct mqtt5__property -> public mosquitto_property. 7 years ago
Roger A. Light 12cba75c73 Client support for adding properties. 7 years ago
Roger A. Light 636e813d1c Load of constant renames ahead of making mqtt_protocol.h public. 7 years ago
Roger A. Light 9eebcf6704 Rename property__free_all->mosquitto_property_free_all
Make public function.
7 years ago
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.
7 years ago
Roger A. Light 6996fd450a Simple pub/sub/unsub tests for v5. 7 years ago
Roger A. Light 52c25fa899 Simple connect test for v5. 7 years ago
Roger A. Light 723d9c2782 Check whether properties are on the correct commands. 7 years ago
Roger A. Light 42896112a1 Pub/sub topic checking tests. 7 years ago
Roger A. Light 1e9e552034 Property write bad identifier test. 7 years ago
Roger A. Light 40ed672ecf Fix topic matching tests and function. 7 years ago
Roger A. Light 77099bb58c Add property write tests. 7 years ago
Roger A. Light a7fff2ad2e Topic test improvements. 7 years ago
Roger A. Light 6609bbac10 Move topic matching tests to unit tests. Needs improving. 7 years ago
Roger A. Light c0ff424082 Add property__get_length_all() and property__get_length().
For getting the number of bytes needed for writing a property list.
7 years ago
Roger A. Light a17dcb4e8f Property string pair, varint and more complicated packet tests. 7 years ago
Roger A. Light e1d0bde0b1 Binary property read tests. 7 years ago
Roger A. Light 194d013279 Finish property string read tests. 7 years ago
Roger A. Light bc1caedc32 Some property string read tests. 7 years ago
Roger A. Light f59526a014 Property read in16 tests. 7 years ago
Roger A. Light e14b613a02 Property read int32 tests. 7 years ago
Roger A. Light f4b2838574 Property reading, and tests for byte properties. 7 years ago
Roger A. Light 34c8c28e9d Remove old UTF-8 tests. 7 years ago
Roger A. Light cdb22edb1c Split malformed UTF-8 validation tests to ensure better coverage. 7 years ago
Roger A. Light 1635dd3883 Multiple bytes read tests. 7 years ago
Roger A. Light c9d9ad8e72 UTF-8 validation tests and fixes. 7 years ago
Roger A. Light 8c7220d7a5 UTF-8 String write tests. 7 years ago
Roger A. Light c124b07929 Four Byte Integer write test. 7 years ago
Roger A. Light e701608e71 Two Byte Integer write test. 7 years ago
Roger A. Light eec3220622 Byte write test. 7 years ago
Roger A. Light 72131c84ce Binary data read functions and tests. 7 years ago
Roger A. Light 99e324e860 Make test strings unsigned. 7 years ago
Roger A. Light ed06255847 Rename to _read so _write can be separate. 7 years ago
Roger A. Light debf7493ad UTF-8 validation tests and fixes. 7 years ago
Roger A. Light 0fad0bd025 UTF-8 String read tests. 7 years ago
Roger A. Light d532253f10 Byte read tests. 7 years ago
Roger A. Light d157e5c41e Four Byte Integer read tests. 7 years ago
Roger A. Light ff67672a2c Two Byte Integer read tests. 7 years ago
Roger A. Light b6b8da1fa6 Variable Byte Integer reading tests. 7 years ago
Roger A. Light 9df05e93c0 Add test for $test publishing bug. 7 years ago
Roger A. Light ba175e581e Update expired test certs. 7 years ago
Roger A. Light f6f509031a Add missing test. 7 years ago
Roger A. Light 11395f9852 Fix accessor functions for username and client id when used in plugin auth check. 7 years ago
Roger A. Light 6a75eb377b Add test for issue in #828.
Signed-off-by: Roger A. Light <roger@atchoo.org>
7 years ago
Roger A. Light 7c496153a9 Add test for issue 505. 7 years ago
Roger A. Light 50abaedaff Add new test to parallel test script.
Signed-off-by: Roger A. Light <roger@atchoo.org>
7 years ago
Wolfgang Hottgenroth 50b0c0b1f1 Add test which currently fails.
Signed-off-by: Wolfgang Hottgenroth <wolfgang.hottgenroth@icloud.com>
7 years ago
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>
7 years ago