Commit Graph

624 Commits (ac5dfca52a14151bf5148ec587f418ee0a5263e0)

Author SHA1 Message Date
Roger A. Light f2630f9c58 Attempt to fix travis on osx and unreliable test. 5 years ago
Roger A. Light eee34613b4 Fix building of old tests. 5 years ago
Roger A. Light b816d46508 Use db as a global var instead of passing to functions.
This allows a big swath of ifdefs to be removed. It also means savings as the db var is not passed around all of the time, and makes it easier to remove the final broker call to mosquitto_time() call in packet_mosq.c. In one test this reduced the calls to mosquitto_time() from 295k to 48k.
5 years ago
Roger A. Light 255ae24a6d Fix basic dynsec tests. 5 years ago
Roger A. Light 4d9afc835b Fix missing functions in test. 5 years ago
Roger A. Light 042c2733f2 Test and fix for message expiry not increasing send quota. 5 years ago
Roger A. Light a1ad4cfcc4 Dynsec: Rename ACL types for clarity.
publishBrokerToClient -> publishClientReceive
publishClientToBroker -> publishClientSend
5 years ago
Roger A. Light e3ed8879f2 Fix test compilation. 5 years ago
Roger A. Light fdff255916 New dynamic security plugin. 5 years ago
Roger A. Light 3eb39b38da Use atomics in test. 5 years ago
Roger A. Light e104645279 msgps clients now report continuously. 5 years ago
Roger A. Light 899695261a Fix invalid character conversions in test. 5 years ago
Roger A. Light 4ae8971ce1 The broker now sends the receive-maximum property for MQTT v5 CONNACKs. 5 years ago
Roger A. Light 4f61f6c161 Fix conversion errors. 5 years ago
Roger A. Light f18f1a08a9 Merge branch 'feature/add-deny-option-for-acl' of git://github.com/BrandtHill/mosquitto into BrandtHill-feature/add-deny-option-for-acl 5 years ago
Roger A. Light c6b94f6266 Fix running of basic client tests. 5 years ago
Roger A. Light 79028bcb14 Fix duplicate frees in tests. 5 years ago
Roger A. Light a65f946e83 Move headers to own directory. 5 years ago
Roger A. Light c90e49af1b Merge remote-tracking branch 'origin/fixes' into develop 5 years ago
Roger A. Light 54b9571516 Enable TLS with certfile+keyfile, not capath/cafile. 5 years ago
Roger A. Light cf1c156765 New plugin interface
This is not specific to authentication, and allows plugins greater flexibility in what events they are interested in. It also adds message handling, and $CONTROL handling.
5 years ago
Roger A. Light 97bd527df0 Breaking: allow_anonymous defaults to false. 5 years ago
Roger A. Light 1b269270bc Sort failed tests when reporting. 5 years ago
Roger A. Light 4372a2b925 Default test timeout of 60s by default is too long. 5 years ago
Roger A. Light f87ef68fae Detect closed socket in tests. 5 years ago
Roger A. Light cec24116d8 Add very basic client tests. 5 years ago
Roger A. Light 5daa5ee162 Add support for $CONTROL/ topics in plugins. 5 years ago
Roger A. Light 748e5f69c8 Fix acl-access-variants test. 5 years ago
Brandt Hill 16eecfcbc5 Add 'deny' as an option for topics/patterns in acl file to allow certain topics to be explicitly denied when they might otherwise be allowed through a more open read/write/readwrite option. Example: 'topic readwrite test/#' and 'topic deny test/hello/#' may be added so that a user can read/write to all test/# topics, except for test/hello/#.
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>

Change variable name for clarity. Remember to initialize bool (I'm bad at C).

Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>

Add documentation to config man page

Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>

Add test case for deny option

Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>

Add deny acls to top of the list to preserve early exit

Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>

change comments

Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
5 years ago
Roger Light 58aa41c813 Optimise use of db__message_write()
New messages are now queued for clients when old ones are sent, rather than on every iteration of the main loop. This produces good performance improvements.
5 years ago
Roger A. Light 69f84bbca9 Simplify "expect_packet" tests. 5 years ago
Roger A. Light ba2c00137d Fix client test leaks. 5 years ago
Roger A. Light 2dc8d2a19a Allow plugins to send messages to specific clients. 5 years ago
Roger A. Light c94e111d73 expect_packet now raises an exception
This should allow tests to be simpler - no more nested ifs.
5 years ago
david-beinder c11d20f82c Database v6 tests
keep v5 client read test to test for backwards compatability
adds username="usrname" and listener_port=1883 for v6 tests

Signed-off-by: david-beinder <david.beinder@mce.li>
5 years ago
Roger A. Light 84e4ba2c1e Send DISCONNECT with malformed-packet reason code on bad PUBLISHes. 5 years ago
Roger A. Light b1e9377a20 Send DISCONNECT with malformed-packet reason code on bad SUBSCRIBEs. 5 years ago
Roger A. Light 8416b007ec Send DISCONNECT with malformed-packet reason code on bad UNSUBSCRIBEs. 5 years ago
Roger A. Light 0edb3e49e7 Remove debug mode 5 years ago
Roger A. Light b5be4fb4af Fix test 5 years ago
Roger A. Light 6deb417804 Simplify db__message_store() interface. 5 years ago
Roger A. Light e3e8dc4ea4 Allow send__pub{ack,rec,rel,comp} to send properties. 5 years ago
Roger A. Light c343812c42 Improve client test for unexpected pubrel. 5 years ago
Roger A. Light ee7d1981ff Merge branch 'rfc-bridge-local-clean' of git://github.com/etactica/mosquitto into etactica-rfc-bridge-local-clean 5 years ago
Roger A. Light bb0e5bb7d3 Add missing header. 5 years ago
Roger A. Light b2e72a7e7c Fix memory leaks only in tests. 5 years ago
Roger A. Light cef9d891ae Tidy up main(). 6 years ago
Roger A. Light fdaeaee6dd Fix test. 6 years ago
Roger A. Light 904284595f Add missing test file. 6 years ago
Roger A. Light 21f203b91a Don't treact unexpected PUBACK/COMP as fatal. 6 years ago
Karl Palsson 07d73c7e3a bridge: support bridge local clean session
This adds the ability to separating bridge clean session settings between
the local and remote endpoints.  Some broker implmentations refuse to allow
non-clean sessions, as they don't support storing messages to be sent to
the connecting broker.  However, this doesn't mean that the local
broker can't be queueing messages to send _out_ to the remote broker.

This PR adds a new bridge connection setting, local_cleansession, that
allows controlling this split. Naming is chosen to be local_ in keeping
with the other local_ settings for bridges.

A test for the six cases of queued/not queued messages in both
directions is added, but v5 testing is currently disabled.  The changes
to support the split are ~independent of protocol version.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 1a93bab80a mosq_test: add do_receive_send counterpart
Like do_send_receive() but aimed for mocking the other side.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson e700c1c523 mosq_test: print stderr from failure to start broker
Doesn't matter when the tests are running, but useful when you're
writing tests.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 3d45c3186c test/broker: align identical code
06-bridge-b2br-disconnect-qos1 and
06-bridge-br2b-disconnect-qos1 have ~identical header code.

unify the identical bits to make it easier to visually see this.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Roger A. Light a16d7e0661 iDon't treat an unexpected PUBREL as fatal.
Issue #1629. Thanks to radcrabs.
6 years ago
Michael 4d658bd569 Fix compile error/warning
Signed-off-by: Michael Liu <michael.liu.point@gmail.com>
6 years ago
Roger A. Light d96543c0b8 Merge branch 'fixes' into develop 6 years ago
Roger A. Light c2ec6f002e Fix test to match fixed protocol check. 6 years ago
Roger A. Light 3ff0d04910 Update test key length to 2048 to avoid new openssl rejections. 6 years ago
Roger A. Light 8d5fd7d1e2 Fix `mosquitto_topic_matches_sub()` behaviour with wildcards in topic.
It was not returning MOSQ_ERR_INVAL if the topic contains a wildcard.

Closes #1589. Thanks to mdelete.
6 years ago
Gianfranco Costamagna 7a5c2d4da5 Bugfix: include "deps" directory only if BUNDLED_DEPS has been provided and set to true
Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
6 years ago
Roger A. Light 27b4518d7e Improve password file parsing in the broker and mosqitto_passwd.
Closes #1584. Thanks to panava.
6 years ago
Roger A. Light 70fd600c3a Fix trailing whitespace not being trimmed on acl users.
Closes #1539. Thanks to CliveJL and LeonPoon.
6 years ago
Roger A. Light 17db97584e Fix client keepalive test using too low keepalive. 6 years ago
Roger A. Light c8789180f3 Fix session expiry with very large expiry intervals.
Closes #1525. Thanks to Christoph Krey.
6 years ago
Roger A. Light 3f0c202aa5 Reduce heap allocation churn when tokenising topics. 6 years ago
Roger A. Light 9ee6e2725c Start of tests for adding subscriptions. 6 years ago
Roger A. Light c0443637e8 Merge branch 'master'
Conflicts:
	ChangeLog.txt
	config.mk
	src/context.c
	src/loop.c
	src/subs.c
	test/broker/01-connect-bad-packet.py
	test/broker/02-subpub-qos1-bad-pubcomp.py
	test/broker/02-subpub-qos1-bad-pubrec.py
	test/broker/02-subpub-qos2-bad-puback-1.py
	test/broker/02-subpub-qos2-bad-puback-2.py
	test/broker/02-subpub-qos2-bad-pubcomp.py
	test/broker/02-subpub-qos2.py
	test/broker/07-will-null-topic.py
6 years ago
Roger Light d92360dd8e Split sub and retain trees. 6 years ago
Roger A. Light 16dc5456bd Enable MQTT v5 in outgoing retain test. 6 years ago
Roger A. Light 2af260ba58 Add `bridge_outgoing_retain` option
This allows outgoing messages from a bridge to have the retain bit
completely disabled, which is useful when bridging to e.g. Amazon or
Google.
6 years ago
Roger A. Light 28c11f4cce Fix tests where broker suddenly disconnects client
This seems to be required just on more modern Python versions.
6 years ago
Roger A. Light aceabcdef2 Tidy up async test outputs. 6 years ago
Jerome Malinge fba1f6bc0a Fix test on invalid null will topic value in connect packet
Signed-off-by: Jerome Malinge <gromgromm@yahoo.com>
6 years ago
Jerome Malinge 11dc077d15 Fix test on invalid reserved bit value in connect packet
Signed-off-by: Jerome Malinge <gromgromm@yahoo.com>
6 years ago
Jerome Malinge ce0b0d23d6 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.

Signed-off-by: Jerome Malinge <gromgromm@yahoo.com>
6 years ago
Jerome Malinge d76e5fd199 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.

Signed-off-by: Jerome Malinge <gromgromm@yahoo.com>
6 years ago
Roger A. Light b2a9daf1db 02 broker subpub tests with v5 support 6 years ago
Roger A. Light b966455f21 02 broker subscribe tests with v5 support 6 years ago
Roger A. Light 3261c30d08 02 broker unsubscribe tests with v5 support 6 years ago
Roger A. Light e0d0af54a5 01 broker tests with v5 support 6 years ago
Roger A. Light 7b73cd2bf7 04 broker tests with v5 support 6 years ago
Roger A. Light b9360bb147 Fixes for 06 broker v5 tests 6 years ago
Roger A. Light cae7ddeec1 10 broker tests with v5 support 6 years ago
Roger A. Light feb79d5880 11 broker tests with v5 support 6 years ago
Roger A. Light c453d2cb3e 07 broker tests with v5 support 6 years ago
Roger A. Light 48f1ca8538 05 broker tests with v5 support 6 years ago
Roger A. Light 16f57cc834 Simpler v5 session expiry in tests. 6 years ago
Roger A. Light 98d600099b 03 broker tests with v5 support 6 years ago
Roger A. Light 7ea5ba845b Add "ready" message to will takeover test. 6 years ago
Roger A. Light 09e95fff5a Add test for session takeover and wills. 6 years ago
Roger A. Light 87bd08b0e0 Add MQTT v5 support to bridge tests. 6 years ago
Roger A. Light fad184c9c2 Bridge remapping refactoring and tests. 6 years ago
Roger A. Light 8463c33720 Refactor property remaining length calculation. 6 years ago
Roger A. Light c471dfb201 Fix sub topics being limited to 200 chars instead of 200 levels
Closes #1441. Thanks to Christoph Krey.
6 years ago
Roger A. Light 093c8f90f5 Fix publish props not being passed to v5 msg callback for QoS 2 msgs.
Closes #1432. Thanks to Magnus Galåen.
6 years ago
Roger A. Light 4db1e80410 More allow_zero_length_clientid fixes.
Closes #1429. Thanks to Dustin Sallings.
6 years ago
Roger A. Light 539c1b9bcb Tests for zero length client id, plus fix for one case where it was allowed 6 years ago
Roger A. Light 8dcb993274 Some tests weren't using python3. 6 years ago
Roger A. Light 1a8c44b84f Fix regression on use of `mosquitto_connect_async()` not working.
Closes #1415 and #1422. Thanks to Karl Palsson, Till Zimmermann and Liam Fry.
6 years ago
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