Commit Graph

645 Commits (0b414c6fff8b5d389ecb67562b471689f7833c21)

Author SHA1 Message Date
Roger A. Light 6104172bcf Fix connect properties not being sent.
This was happening when the client automatically reconnected.

Closes #1846. Thanks to DSOFreak.
5 years ago
Roger A. Light 9724710cd6 Add MOSQ_OPT_BIND_ADDRESS.
This allows setting of a bind address independently of the
`mosquitto_connect*()` call.
5 years ago
Roger A. Light 89733138bb CMake build fixes. 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 2774515456 Fix missing mach/mach_time.h header on OS X.
Closes #1831. Thanks to P-Hagen.
5 years ago
Roger A. Light acf4ff3738 Fix stdin being closed by mistake
This was closing the sockpair* sockets before they were initialised to INVALID_SOCKET.

Close #1823. Thanks to ostkamp.
5 years ago
Roger A. Light a53712a14d Don't use logging until log mutex is initialised.
Closes #1819. Thanks to santoshks68.
5 years ago
Roger A. Light 298d84941e Fix send quota being incorrecly reset on reconnect.
Closes #1822. Thanks to Sarek.
5 years ago
Roger A. Light 56ba1b99db Add `mosquitto_ssl_get()`.
This allow clients to access their SSL structure and
perform additional verification.
5 years ago
Roger A. Light 5daa5ee162 Add support for $CONTROL/ topics in plugins. 5 years ago
Roger A. Light f0862e26ec Add `mosquitto_kick_client_by_clientid()` and `mosquitto_kick_client_by_username()`
These can be used by plugins to disconnect clients.
5 years ago
Roger A. Light bb5456729d Move keepalive check code to separate file.
This is in preparation for changing to a tree based implementation.
5 years ago
ignacy.ruksza 3806296c15 Ld symbol of the mosquitto_property_copy_all has global bind now.
Signed-off-by: ignacy.ruksza <ignacy.ruksza@ledatel.pl>
5 years ago
Roger A. Light 39ff7226eb Bump version, add new www posts. 5 years ago
Titouan Christophe 79051fbdca do not include pthread when compiling without threading support
This fixes the following error, when compiling for systems without
pthread support, and when passing WITH_THREADING=no to make:

    thread_mosq.c:24:12: fatal error: pthread.h: No such file or directory
     #  include <pthread.h>
                 ^~~~~~~~~~~
    compilation terminated.

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
5 years ago
Karl Palsson 2fdb5a0171 docs: move _string_option with rest of client options
It was grouped with the callbacks, where it didn't make a lot of sense.

Signed-off-by: Karl Palsson <karlp@tweak.net.au>
5 years ago
Karl Palsson d254ea70df docs: remove duplicate mosquitto_reconnect_delay_set
Was listed in both client options, and under the callbacks.

Signed-off-by: Karl Palsson <karlp@tweak.net.au>
5 years ago
Roger A. Light c9218fd48c Bump version. 5 years ago
Roger A. Light b3c2ac20dc Fix overly broad HAVE_PTHREAD_CANCEL compile guard.
Closes #1547. Thanks to Markus Gothe.
5 years ago
Roger A. Light 4b100df5b1 Fix reconnect+will delay interval issue causing missing messages.
Fix clients not receiving messages after a previous client with the same   client ID and positive will delay interval quit.
Closes #1752. Thanks to Jiří Zuzaňák.
5 years ago
Roger Light 4ef48269f5 Fix mosquitto_loop_stop() not stopping on Windows
Closes #1748. Closes #117. Thanks to Sigmund Vik.
5 years ago
Roger A. Light bd27935ff6 `mosquitto_loop_start()` now sets a thread name.
This applies on Linux, FreeBSD, NetBSD, and OpenBSD.

Closes #1777. Thanks to ABuch19.
5 years ago
Roger A. Light f180e923ef Merge branch 'lazy_ssl' of git://github.com/abiliojr/mosquitto into abiliojr-lazy_ssl 5 years ago
Roger A. Light 9b5112f547 Fix unsigned compared against 0.
Coverity Scan 1431132.
5 years ago
Roger A. Light 1b060bb064 Guard against use-after-free.
Coverity Scan 1431131, 1431135, 1431141.
5 years ago
Roger A. Light 84e4ba2c1e Send DISCONNECT with malformed-packet reason code on bad PUBLISHes. 5 years ago
Abilio Marques d5aae3eca7 lazy init SSL
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
5 years ago
Roger A. Light d371b3c58b Fix `mosquitto_publish*()` no longer returning `MOSQ_ERR_NO_CONN`.
This was always returning success when the client was not connected.

Closes #1725. Thanks to BOTorioN.
5 years ago
Roger A. Light d9003bb858 Don't use mutex until it is initialised.
Coverity Scan 1430456.
5 years ago
Roger A. Light e3e8dc4ea4 Allow send__pub{ack,rec,rel,comp} to send properties. 5 years ago
Roger A. Light c8964228e3 Improved documentation around connect callback return codes.
Close #1730. Thanks to John Laird.
5 years ago
Jasper Lievisse Adriaanse 4ef7ea6244 extend ifdef guard to fix compilation on OpenBSD
otherwise in6_addr, AF_INET and AF_INET6 end up being undefined

Signed-off-by: Jasper Lievisse Adriaanse <jasper@humppa.nl>
5 years ago
Roger A. Light a9c97efaa4 Document that keepalive must be >= 5 seconds. 5 years ago
Roger A. Light cea0423e69 Update changelog and version. 5 years ago
Martin Kelly 8d54aaef89 add a refcount to library init/cleanup
Add a refcount around mosquitto_lib_init and mosquitto_lib_cleanup so
that multiple calls to init/cleanup don't trigger memory leaks or
double-frees.

Signed-off-by: Martin Kelly <mkelly@xevo.com>
5 years ago
Martin Kelly d103174b5c correct mosquitto.h return code documentation
We currently erroneously claim that mosquitto_lib_init cannot fail,
while it can fail on Windows, if WSAStartup fails in net__init. Correct
this.

Signed-off-by: Martin Kelly <mkelly@xevo.com>
5 years ago
Martin Kelly 61a50c60d2 add a refcount to library init/cleanup
Add a refcount around mosquitto_lib_init and mosquitto_lib_cleanup so
that multiple calls to init/cleanup don't trigger memory leaks or
double-frees.

Signed-off-by: Martin Kelly <mkelly@xevo.com>
5 years ago
Roger A. Light 762ad432e8 Fix support for openssl 3.0 5 years ago
Roger A. Light 21f203b91a Don't treact unexpected PUBACK/COMP as fatal. 6 years ago
Roger A. Light f0deb9a5a1 CMake: Make building clients, broker and C++ library optional.
Issue #1641.
6 years ago
Karl Palsson efb21fb09c doc: lib clarify _topic_check functions
Removed some whitespace and copy paste errors.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 8c16d7cd50 doc: add mqtt5 property options.
This just gets them all listed, explaining the available apis where they
could be used is left as further work.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 1b4b6f4a2c doc: lib: properly flag code samples for formatting
Uses the NaturalDocs 1.5 compatible style. (Forward compatible with v2)
Uses > for short snippets and the tagged style for longer snippets.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson fd83d2274f doc: lib: avoid unintended code formatting
Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 1331399228 doc: lib: specifically document mqtt5_sub_options
This makes the documentation of the options available in
https://mosquitto.org/api/files/mosquitto-h.html#mosquitto_subscribe_v5
a lot cleaner. (and also _subscribe_multiple())

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson d46707fe02 doc: lib_vesion: correctly format return values
Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 765f7343c2 doc: lib: _xxx_option() and opts_set() cleanup list syntax
This change improves the option list rendering by correctly triggering
naturaldocs detection of the lists.  No change other than line breaks
and whitespace.

Signed-off-by: Karl Palsson <karlp@etactica.com>
6 years ago
Karl Palsson 6c7ef15112 doc: lib: group all _option functions together.
_string_option was grouped with the callbacks instead of _int_option and
_void_option.  Grouped them all together neatly.

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