Commit Graph

946 Commits (4379f78cec93f7a4d1de93ffb66489485df63305)

Author SHA1 Message Date
Roger A. Light 6deb417804 Simplify db__message_store() interface. 5 years ago
Roger A. Light 3e595d557e Add db__msg_store_free() for freeing stored messages. 5 years ago
Roger A. Light e3e8dc4ea4 Allow send__pub{ack,rec,rel,comp} to send properties. 5 years ago
Roger Light 318dead6bf Function to allow plugins to publish messages. 5 years ago
Roger A. Light e54bac2a54 No need to pass separate username/password here. 5 years ago
Roger A. Light 73cc271d37 Allow auth plugin to see all logins, unless accepted by password file. 5 years ago
Roger A. Light 2e32634a95 DLT logging is now configurable at runtime with `log_dest dlt`.
Closes #1735. Thanks to Brian Orpin.
5 years ago
Roger A. Light e755827f4f Free outgoing client messages even for non-bridges. 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 d3247a830a Fix memory leak when connecting clients are rejected. 5 years ago
Roger A. Light c5d6f32341 Be more tolerant when loading persistence files. 5 years ago
Roger A. Light ff2b111cb3 Fix minor memory leak when load bridge prefixes. 6 years ago
Roger A. Light 4392320bc3 Fix memory leak when cleaning all shared subs. 6 years ago
Roger A. Light ea47f6b0dc Clearer client disconnection message. 6 years ago
Roger A. Light cef9d891ae Tidy up main(). 6 years ago
Roger A. Light c72dd39f92 Allow MQTT v5.0 outgoing bridges to fall back to MQTT v3.1.1
This applies if connecting to a v3.x only broker.
6 years ago
Roger Light 986bf89f47 Prototype separate poll/epoll files. 6 years ago
Roger A. Light c3e824ee22 Remove duplicate strlen() calls. 6 years ago
Roger A. Light 95faff36aa Fix ref counting of retained messages. 6 years ago
Roger A. Light 0b7b7389b0 Remove duplicate UTF-8 check
All strings are already validated in packet__read_string().
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
Roger A. Light d96543c0b8 Merge branch 'fixes' into develop 6 years ago
Roger A. Light b0a065f790 Update changelog. Release page. Bump copyright. 6 years ago
Roger A. Light 0c68c20d2b Fix `mosquitto_client_protocol()` returning incorrect values. 6 years ago
Roger A. Light db02c9162d Add plugin that prints out calls, to help debugging. 6 years ago
Roger A. Light 032af6bf69 Add missing header 6 years ago
Roger A. Light c4e41f3444 Back port db_dump from develop.
Closes #1519. Thanks to Christoph Krey.
6 years ago
Roger A. Light 2a8c1d03f5 Merge branch 'coverity-fixes' into fixes 6 years ago
Gianfranco Costamagna 078ad752cd cmake: add ADNS enable/disable dynamic support
Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
6 years ago
Gianfranco Costamagna e9a7150031 Bugfix: enabling DLT was overriding everything else on linker flags because of error in cmake set keyword
Signed-off-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
6 years ago
Roger A. Light 07c54627e9 Print OpenSSL errors in more situations
Covers when loading certificates fails, or there are ENGINE problems.

Closes #1552. Thanks to Michael Richardson.
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 ed5db1bd6b Fix `bind_interface` not working for the default listener.
Closes #1533. Thanks to Markus Gothe.
6 years ago
Roger A. Light e188a6b500 More whitespace trimming fixes/consolidation. 6 years ago
Roger A. Light 32969169f7 Trim whitespace from acl topics. 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 9a0de5ef61 Free log_timestamp_format on exit.
Closes #1523. Thanks to Basavesh Shivakumar.
6 years ago
Roger A. Light 11ece604c4 Merge branch 'bugfix-MemLeak_in_handle_unsubscribe' of git://github.com/panava/mosquitto into panava-bugfix-MemLeak_in_handle_unsubscribe 6 years ago
Roger A. Light 3220790790 Merge branch 'bugfix-MemoryLeak_in_persist_read' of git://github.com/panava/mosquitto into panava-bugfix-MemoryLeak_in_persist_read 6 years ago
Roger A. Light 50735afb5b Fix for internal logging not printing. 6 years ago
Panagiotis Vasilikos 618413e1d2 Resource leak in persist_read.c
Reason: In lines 435 and 439, the function returns without calling closing
fptr which was opened at line 399.

Fix: I added fclose(fptr) statements before each of the returns.
Signed-off-by: Panagiotis Vasilikos <panagiotis.vasilikos@alexandra.dk>
6 years ago
Roger A. Light 9ae38788dc Fix config->user not being freed on exit.
Closes #1564. Thanks to back1127.
6 years ago
Roger A. Light 812c0636d5 Satisfy valgrind when exiting on error.
This is when due to not being able to open a listening socket, solved by
calling freeaddrinfo in the error cases.

Closes #1565. Thanks to back1127.
6 years ago
Roger A. Light e7c9f009bd Strip whitespace from end of config file string options.
Closes #1566. Thanks to kollokollo.
6 years ago
Panagiotis Vasilikos 49bf788862 Memory leak in handle_unsubscribe.c
Reason: In line 70, the memory allocation for the pointer reasons_codes may
result to a memory leak due to the many returns (e.g as the one in line 78)
occuring in the program's path until reaching the mosquitto__free at line 122.

Fix: I added a mosquitto__free(reason_codes) statement before each return
statement that could result to a memory leak

Signed-off-by: Panagiotis Vasilikos <panagiotis.vasilikos@alexandra.dk>
6 years ago
Panagiotis Vasilikos 0f7052564c Memory leak in handle_unsubscribe.c
Reason: In line 70, the memory allocation for the pointer reasons_codes may
result to a memory leak due to the many returns (e.g as the one in line 78)
occuring in the program's path until reaching the mosquitto__free at line 122.

Fix: I moved the memory allocation code block (lines 69-73) just before
the line 102. This is the first place the pointer reason_codes is used, while
the following mosquitto__free operators free the allocated memory correctly.

Signed-off-by: Panagiotis Vasilikos <panagiotis.vasilikos@alexandra.dk>
6 years ago
Roger A. Light 5528dde56a Fix possible null dereferences. 6 years ago
Roger A. Light 05ec02b3f3 Remove dead values. 6 years ago
Roger A. Light 18f0508a6e Fix dereference before null check.
Coverity Scan 1405815.
6 years ago
Roger A. Light db62f9843f Fix unused value being overwritten.
Coverity Scan 1400727.
6 years ago