Commit Graph

3376 Commits (1d230bd255d7cd4a1e813517c71675f1b64caddc)
 

Author SHA1 Message Date
Kai Buschulte 71456077ad Introduce a common-options cmake target
this makes it possible to explicitly share compile options, without
using the `add_definition` function. This function declares options for
the current directory and below (in our case also for `deps`).

Adding -Wall, -Wconversion and -Wextra to at least make compiler
warnings visible for the cmake build.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte f486b45619 CMake: introduce a coverage target
to produce coverage information while running the tests, call cmake with
the following options:

cmake -DCMAKE_C_FLAGS=-coverage -DCMAKE_CXX_FLAGS=-coverage <build-dir>

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Roger Light a3d94359f9
Merge pull request #2581 from buschulte/cmake-with-test-option
Introduce a CMake WITH_TESTS option
3 years ago
Roger Light c4e74319ac
Merge pull request #2580 from buschulte/fix-cmake-build-for-older-versions
Fix CMake build for versions <3.19
3 years ago
Kai Buschulte 5b02490fd2 Introduce a CMake WITH_TESTS option
To enable or disable tests in the build step and to circumvent the
CUnit build dependency.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte d66702ba37 Fix CMake build for versions <3.19
CMake <3.19 does not support interface targets with sources.
For better IDE integrations we still can add the config.h using the
`target_sources` command.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte a883bda9c1 Add CMake test target
Use `ctest` or `make test` to run all tests.
With this it's also possible to run tests on a Mac.

Relative paths used in tests become absolute ones to make tests
executable from any build folder.

Also fixed race condition in
  test/broker/11-persistent-subscription-no-local.py

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 0fe397603b Workaround problem with sqlite3-wal files
These files are not removed but empty for some versions of sqlite3

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 4eadc96bcb Add Traceback to failing packet_match
This helps finding the caller/cause of the failure

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 8b5a86fd52 Introduce config-header cmake target
This is an interface cmake target which specifies include directories
required by the config.h places in the root of the project.

This header is a "public" header visible to plugins linking the
mosquitto exports.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 36935a3384 Use OpenSSL:SSL cmake target
Instead of using the CMAKE_OPENSSL_INCLUDE and CMAKE_OPENSSL_LIBRARY
variables the imported target OpenSSL::SSL is used.
This is a more modern way of target linking.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Norbert Heusser 71e1b92564 Fixed race condition in test/broker/11-persistent-subscription-no-local.py 3 years ago
Roger Light 6c1bb33e86
Merge pull request #2573 from buschulte/throw-broken-pipe-error-when-loosing-connection
throw BrokenPipeError if nothing received on socket
3 years ago
Roger A. Light 436635fda8 Use absolute rather than relative paths when installing. 3 years ago
Roger Light 38295aeca3
Merge pull request #2559 from newAM/fix-mosquittopp-path
Fix install path to mosquittopp.h
3 years ago
Roger Light f1bf2938b0
Merge pull request #2577 from marchputt/patch-1
Fix syntax errors in examples
3 years ago
Pargorn Puttapirat 9417facffa
Fix syntax errors in examples
Problematics examples: addRoleACL and removeRoleACL
3 years ago
Roger A. Light 34391080d6 Add dynsec init by simple file. 3 years ago
Kai Buschulte a7304083f8 throw BrokenPipeError if nothing received on sock
instead of ignoring this error, we throw an exception
the previous way might cause hard to find issues

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Roger A. Light 546df9db85 Build fixes, particularly pedantic compiler warnings. 3 years ago
Alex Martens bb33c503b6 Fix install path to mosquittopp.h
Signed-off-by: Alex Martens <eclipse@thinglab.org>
3 years ago
Roger A. Light 29f49bf6ab Publish global out_packet values to $SYS 3 years ago
Roger A. Light 2e061afcc6 Fix build 3 years ago
Roger A. Light 4099f8d1b6 Store out_packet bytes rather than having to calculate it. 3 years ago
Roger A. Light e3246f547c Print messages in mosquitto_passwd when adding/updating passwords.
Closes #2544. Thanks to Shruti Nanda.
3 years ago
Roger A. Light ebfebf8708 Fix bridges not sending failure notification messages.
This is for messages to the local broker if the remote bridge connection
fails.

Closes #1488.
Closes #2467.
3 years ago
Roger A. Light 3e1cf8a80b Fix tests build. 3 years ago
Roger A. Light c99502a256 Add clients to session expiry check list when restarting and reloading from persistence.
Closes #2546. Thanks to Joachim Schachermayer.
3 years ago
Roger A. Light 80b36919b1 Fix incorrect pointer use. 3 years ago
Roger A. Light 29c6480c47 Improve documentation of `persistent_client_expiration` option.
Closes #2404. Thanks to Rainer Plischke.
3 years ago
Roger A. Light fe32e2506b Add more mosquitto_passwd examples 3 years ago
Roger A. Light 2c8dc3968e Migrate persist-sqlite to use persistence_location. 3 years ago
Roger A. Light 4ac8c0bcc3 Add deny-protocol-version example plugin, for 2.0 only. 3 years ago
Roger A. Light 09ac578459 Fix unused flags in CONNECT command being forced to be 0 in MQTT v3.1
This check is not required until v3.1.1.

Closes #2522. Thanks to garinocyr
3 years ago
Roger A. Light b6b8039914 Fix use of `MOSQ_OPT_TLS_ENGINE` being unable to be used.
This was due to the openssl ctx not being initialised until starting to connect.

Closes #2537. Thanks to chessing-c4.
3 years ago
Roger A. Light 26b007f3fc Fix Coverity 1488816, use of uninitialised value. 3 years ago
Roger A. Light e5bf040fb7 Weekly Coverity Scan run. 3 years ago
Norbert Heusser 6fbf6fc5cb
Merge branch 'eclipse:develop' into develop 3 years ago
Roger Light 6bce50cb65
Merge pull request #2532 from buschulte/fixes-for-kqueue-memory-issue
Fix memory issues in kqueue operations
3 years ago
Roger A. Light bf3a73a1cb Merge branch 'buschulte-macos-cmake-build' into develop 3 years ago
Roger A. Light 51f9a76f03 Merge branch 'macos-cmake-build' of https://github.com/buschulte/mosquitto into buschulte-macos-cmake-build 3 years ago
Roger A. Light e346288785 Merge branch 'buschulte-cmake-use-preinstalled-sqlite3-find-module' into develop 3 years ago
Roger A. Light 1749432382 Merge branch 'cmake-use-preinstalled-sqlite3-find-module' of https://github.com/buschulte/mosquitto into buschulte-cmake-use-preinstalled-sqlite3-find-module 3 years ago
Roger A. Light 127c5e7577 Update changelog 3 years ago
Roger A. Light 45a6b89e91 Merge branch 'abiliojr-fix_msg_modification_leak' into fixes 3 years ago
Roger A. Light 53a9e81480 Merge branch 'fix_msg_modification_leak' of https://github.com/abiliojr/mosquitto into abiliojr-fix_msg_modification_leak 3 years ago
JsBergbau 651331ff7d Added queue_qos0_messages documentation for bridging
See https://github.com/eclipse/mosquitto/pull/2500
3 years ago
Kai Buschulte a3125934dd Fix macOS compile issues
Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 7e4746aac4 Fix missing symbols MacOS
Core symbols needed by plugins are now properly linked to their objects

 * Remove link_directories() call:

This specification is not necessary for our own libraries as cmake
shares this information over the targets.

If needed they should be specified target specific, like done for
the external DLT library.

Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago
Kai Buschulte 0e9df05d0d Add imported target for cJSON
Signed-off-by: Kai Buschulte <kai.buschulte@cedalo.com>
3 years ago