Roger A. Light
b6dc4e5780
Fix datatype_read test.
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
e72d1d6ff5
Fix `mosquitto_topic_matches_sub()` rc with sub=="topic/#abc".
...
This now returns MOSQ_ERR_INVAL as expected.
7 years ago
Roger A. Light
1b5c900e77
Update CVE details and bump version number.
7 years ago
Roger A. Light
7ff9c3763b
Fix socks build when using cmake.
7 years ago
Roger A. Light
f952ae3a67
Fixed durable clients being unable to receive messages when offline.
...
This occurred when per_listener_settings was set to true.
Closes #1081 . Thanks to dwin-wangjt.
7 years ago
Roger A. Light
d6a690aa8d
Fix Will not being sent for Websockets clients.
...
Closes #1143 . Thanks to salcedo.
7 years ago
Roger A. Light
ab8b57ff54
Allow broker to always restart on Windows when using `log_dest file`.
...
Closes #1080 . Thanks to lcouz.
7 years ago
Roger Light
5236295159
Handle mismatched handshakes properly.
...
For example, a QoS1 PUBLISH with QoS2 reply.
7 years ago
Matthias Stone
4325c44baf
Don't clear SSL context when TLS connection is closed.
...
Previous behaviour would clear the external SSL_CTX provided by
MOSQ_OPT_SSL_CTX. This required the user to reset the SSL_CTX every
disconnect, and trust that they were not leaking references.
Recreating the SSL context for every connection is not necessary, and the
SSL context is freed in mosquitto_destroy, which is sufficient.
Signed-off-by: Matthias Stone <matthias@bellstone.ca>
7 years ago
Roger A. Light
e8320cbf19
Fix TLS connections not working over SOCKS.
...
Thanks to Mark Oeltjenbruns.
7 years ago
Roger A. Light
be9c1071b0
Fix compilation when openssl deprecated APIs are not available.
...
Closes #1094 . Thanks to Rosen Penev.
7 years ago
Roger A. Light
70c4097b6f
Fix comparison of boolean values in CMake build.
...
Closes #1101 . Thanks to Mojca Miklavec and Andrew L. Moore.
7 years ago
Maksym Ruchko
f6943b006a
Fixed threaded enum lost in merges
...
Change was part of the original commit e8185ddaa7
"[166] Don't cancel external threads."
and then lost during code reorganizing and subsequent merge,
commits 970ba58da6
81cb7ab547
Signed-off-by: Maksym Ruchko <mruchko@advantech-bb.com>
7 years ago
Roger A. Light
e1976739b8
Fix duplicate error values.
...
Closes #1109 . Thanks to Tifaifai.
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
f9a17e2782
Add alias support to the broker.
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 A. Light
aeba5b5d0d
Fix and tests for client side receive-maximum.
7 years ago
Roger Light
84660e1cbe
Send maximum limits for QoS>0.
...
This needs more work on the broker front to simplify the design.
7 years ago
Roger Light
67c1d4453e
Receive maximum support for clients.
7 years ago
Roger Light
0546e7bebc
Add mosquitto_int_option and mosquitto_void_option
...
This deprecates mosquitto_opts_set().
7 years ago
Roger A. Light
16e83bfe5d
Process receive maximum (as max_inflight_messages).
7 years ago
Roger A. Light
659cd2a3b1
Read reason code for PUBREC/PUBREL.
7 years ago
Roger A. Light
7c3666d593
Subscription identifier support.
7 years ago
Roger A. Light
fcf4cd0b27
Merge branch 'master' into mqtt5
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
db7901884f
Retain-as-published support.
7 years ago
Roger A. Light
4933f889ff
Fix missing header.
7 years ago
Roger A. Light
a8ca5c83af
Bump version.
7 years ago
Roger A. Light
afe011866c
Remove unused variables.
7 years ago
Roger A. Light
a00dd29af8
Fix building where TLS-PSK is not available.
...
Closes #68 .
7 years ago
Roger A. Light
f90ba23738
Retain handling support.
7 years ago
Roger A. Light
4fe75b1af0
Make user functions for reading properties easier to use.
7 years ago
Roger A. Light
73c46174f8
Don't call on_disconnect() twice if keepalive tests fail.
...
Closes #1067 . Thanks to xingchen02.
Bug: https://github.com/eclipse/mosquitto/issues/1067
7 years ago
Roger A. Light
6ef2c79e9a
Add max_keepalive, for limiting keepalives of MQTT v5 clients.
7 years ago
Roger A. Light
29846d282d
Client library now reads its assigned client id.
7 years ago
Roger A. Light
fda66e8311
Add broker test for assigned client id.
7 years ago
Tamaki Nishino
d07864939a
Check SSL_DATA_PENDING in mosquitto_loop_read()
...
Signed-off-by: Tamaki Nishino <otamachan@gmail.com>
7 years ago
Roger A. Light
5d02f58151
Fix reconnect delay backoff behaviour.
...
Closes #1027 . Thanks to Harm Verhagen.
Bug: https://github.com/eclipse/mosquitto/issues/1027
7 years ago
Roger A. Light
e169f1c7c2
When using ADNS, don't ask for all network protocols when connecting.
...
This can lead to confusing "Protocol not supported" errors if the
network is down, because UDP sockets are provided.
Thanks to jsaak.
Closes #1062 .
Bug: https://github.com/eclipse/mosquitto/issues/1062
7 years ago
Roger A. Light
867fe80e0e
Properties are now freed after the callback.
7 years ago
Roger A. Light
1b854e250e
Function for copying property lists.
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
54db895cb3
Rename clean_session to clean_start for v5.
7 years ago
Roger A. Light
0123ff1efe
Rename *_with_properties() -> *_v5().
7 years ago
Roger Light
f809ecbcbe
Add DISCONNECT handling to library.
7 years ago
Roger Light
236e967161
Pass properties when disconnecting clients.
7 years ago
Roger Light
f7dc097f82
Move client disconnect code to own function.
7 years ago
Roger Light
3cb8a52ef3
Add reason code to mosquitto_disconnect_with_properties()
7 years ago
Roger Light
14c2f528cf
Add reason code to send__disconnect().
7 years ago
Roger A. Light
d64ce2e242
Make mosquitto_reason_string public.
7 years ago
Roger A. Light
94631ae68b
Don't free properties any more, we use them.
7 years ago
Roger A. Light
59b3fdfdf8
Add client property value reading functions.
7 years ago
Roger A. Light
158189393e
Add v5 client callbacks.
7 years ago
Roger A. Light
098a1c8ecf
Fix subscribe_multiple datatypes.
7 years ago
Roger A. Light
beb96c6b8b
Merge branch 'master' into develop
7 years ago
Roger A. Light
e81db23ce4
Bump version number.
7 years ago
Roger A. Light
71b8c4d892
Fix TLS connections when using an external event loop.
...
Affects the use of mosquitto_loop_read() and mosquitto_write().
Closes #990 .
7 years ago
Iblis Lin
0368a8c01d
add socket headers for FreeBSD
...
Signed-off-by: Iblis Lin <iblis@hs.ntnu.edu.tw>
7 years ago
Bartosz Taczała
e86b27a2da
Adding support for QNX7.0.0
...
Change-Id: Id01e2880aa5cadc0e93a46b95fe675e1938051fa
Signed-off-by: Bartosz Taczała <bartosz.taczala@mobica.com>
7 years ago
Roger A. Light
f77c1ca91b
private struct mqtt5__property -> public mosquitto_property.
7 years ago
Roger A. Light
f9e0fa246a
Validate properties coming into client library.
7 years ago
Roger A. Light
8aa936936e
Library and client support for topic-alias.
7 years ago
Roger A. Light
de3a9af1f7
Client+library support for unsubscribe properties.
7 years ago
Roger A. Light
741a8a9cc3
Client disconnect property support, plus disconnect packet fix.
7 years ago
Roger A. Light
383608613a
Client+lib will property support.
7 years ago
Roger A. Light
12cba75c73
Client support for adding properties.
7 years ago
Roger A. Light
b462115fa6
Add reason code to PUBACK/REC/REL/COMP.
7 years ago
Roger A. Light
ba874c6014
Merge branch 'mqtt5' of gitlab.com:ralight/mosquitto-private into mqtt5
7 years ago
Roger A. Light
446ad6290a
Add mosquitto_string_to_property_info.
7 years ago
Roger A. Light
c19b3598c0
Add mosquitto_string_to_command.
7 years ago
Roger A. Light
63a479564b
Add mosquitto_property_command_check()
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
be5602be28
Add sections to mosquitto.h.
7 years ago
Roger A. Light
5aa983c210
Fix copy/paste error.
7 years ago
Roger A. Light
b6c667689d
Write properties for all commands apart from AUTH.
7 years ago
Roger A. Light
8077376a79
Add read support for AUTH packets.
7 years ago
Roger A. Light
ca40255720
mid == 0 is a protocol error.
7 years ago
Roger A. Light
eefa7f7604
All existing commands read properties.
7 years ago
Roger A. Light
723d9c2782
Check whether properties are on the correct commands.
7 years ago
Roger A. Light
267178bd99
User properties are copied from PUBLISH to PUBLISH.
7 years ago
Roger A. Light
0baf358cf8
Add properties member to will struct.
7 years ago
majekw
7f1419e4de
Fix mosquitto_pub -l if compiled using cmake.
...
Since dde005ef92
mosquito_pub is throwing error
that 'threading support has not been compiled' when compiled using cmake.
It looks like WITH_THREADING flag is not set at top level Makefile and used
only in lib/ directory, so library is correctly compiled with threading.
But for client this flag is undefined, so it gives error on '-l' option.
This commit moves part related to WITH_THREADING flag out of lib/CMakeLists.txt
to top levele CMakeLists.txt, so it could be accessible to all subdirectories.
Signed-off-by: Marek Wodzinski <majek@w7i.pl>
7 years ago
Roger A. Light
0a9ee5b4cf
Fix memory leak when reconnecting with TLS errors.
...
Fix memory leak that occurred if mosquitto_reconnect() was used when TLS
errors were present.
Closes #592 . Thanks to smartdabao and aaronovz1.
7 years ago
Roger A. Light
35dea07dcd
Merge branch 'master'
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
4daaaaf4a7
Add property writing support, untested.
7 years ago
Roger A. Light
262ac3fb5b
Fix varint length reporting.
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
8210c1fa7a
All outgoing packets now write property length for MQTT 5.
...
At the moment this only writes a 0 property length, i.e. no properties.
It does mean that output packets are more correct than before.
7 years ago
Roger A. Light
e5eb03b2e6
Allow building without shared library.
7 years ago
Roger A. Light
abb3fee1f8
Coverage reporting for whole broker.
7 years ago
Roger A. Light
8e793f68e1
Simplify prop validation.
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
05b40b90db
Add reason strings.
7 years ago
Roger A. Light
75b6851c76
Property identifer is a varint.
7 years ago
Roger A. Light
572be268e5
Fix signedness of varint reading.
7 years ago
Roger A. Light
366744bad7
Fix subscribe_multiple datatypes.
7 years ago
Roger A. Light
c9d9ad8e72
UTF-8 validation tests and fixes.
7 years ago
Roger A. Light
72131c84ce
Binary data read functions and tests.
7 years ago
Roger A. Light
debf7493ad
UTF-8 validation tests and fixes.
7 years ago
Roger A. Light
400db91166
Handle UTF-8 validation in packet__read_string.
7 years ago
Roger A. Light
b6b8da1fa6
Variable Byte Integer reading tests.
7 years ago
Roger A. Light
99a1c0e43a
Move simple datatype reading functions to own file.
...
This facilitates easier testing.
7 years ago
Roger A. Light
1488992ea8
Naive reading of MQTT 5 properties. No processing done.
7 years ago
Roger A. Light
17b3709790
Fix varint reading.
7 years ago
Roger Light
6c9e8d51c2
Merge branch 'develop' into mqtt5
7 years ago
Roger A. Light
1867f30785
Merge branch 'master'
...
Conflicts:
ChangeLog.txt
7 years ago
Roger A. Light
cf9a72d8db
Add mosquitto_subscribe_multiple.
7 years ago
Roger A. Light
c78003cacf
Bump version number, add CVE details.
7 years ago
Roger A. Light
f9c9f3d396
Fix incorrect hash usage with duplicate clients.
...
Fix duplicate clients being added to by_id hash before the old client
was removed.
Closes #645 .
7 years ago
Roger A. Light
59bd07627d
Various build improvements to help packaging.
7 years ago
Roger A. Light
dd0e0d91b0
Fix build on Windows.
7 years ago
Roger A. Light
3f87232065
Bump version number.
7 years ago
Roger A. Light
4ee6941188
Primitive v5 CONNACK support - no properties.
7 years ago
Roger A. Light
561513fdd4
Very simple v5 CONNECT support - no properties.
7 years ago
Roger A. Light
ccc97d8c96
Function for reading variable length ints from packet.
7 years ago
Roger A. Light
33a523eea9
Add identifiers for v5.
...
Clients know about v5, just need library support...
7 years ago
Roger A. Light
a127c93a5a
Property identifiers.
7 years ago
Roger A. Light
99c6ec7f6e
Protocol name will never be changed from MQTT.
7 years ago
Roger A. Light
5dc88fe8f3
Add v5 return codes
7 years ago
Roger A. Light
0bacff11df
Rename mqtt3_protocol.h -> mqtt_protocol.h.
7 years ago
Roger A. Light
48f096bc1c
Read/write new 32 bit ints from packets.
7 years ago
Michael Heimpold
a459e93498
Install pkg-config files also for non-CMake builds
...
At the moment, pkg-config hint files are only installed when CMake is
used as build system. However, it is very convenient for programs using
libmosquitto to have these files always in place, so let's add it
here, too.
Signed-off-by: Michael Heimpold <michael.heimpold@i2se.com>
7 years ago
Fredrik Fornwall
915e91d9be
Fix build with OPENSSL_NO_ENGINE
...
Signed-off-by: Fredrik Fornwall <fredrik@fornwall.net>
7 years ago
Roger A. Light
ae45bd3d40
Update changelog and fixes to #927 PR.
7 years ago
yzhivik
96e62d596f
fix SOCKS5 username and password set
...
fix SOCKS5 request wrt IP4/IP6/FQDN
Signed-off-by: yzhivik <yuriy.zhyvytsya@gmail.com>
7 years ago
Roger A. Light
a9da3c263d
Bump version number.
...
Signed-off-by: Roger A. Light <roger@atchoo.org>
7 years ago
Roger A. Light
4ccc68d2df
Revert incorrect change.
7 years ago
Roger A. Light
9d30625622
Build fix for Windows.
7 years ago
Roger A. Light
88765a5e80
Consistent use of config.h across the project.
7 years ago
Roger A. Light
a199cac69e
Don't confuse expiring and duplicate clients.
7 years ago
Roger A. Light
0ec090f31a
Fixes for building on FreeBSD.
7 years ago
Roger A. Light
10b19a42ed
Fixes for building on NetBSD.
...
Closes #258 .
Thanks to Daniel Ölschlegel.
7 years ago
Roger A. Light
c757cb0912
Remove incorrect comment.
7 years ago
Roger A. Light
e185d18917
Better fix for #851 .
...
Ensure all sockets that are closed are set to INVALID_SOCKET.
Signed-off-by: Roger A. Light <roger@atchoo.org>
7 years ago
Roger A. Light
7f0b4d6271
Fix connection problems when using mosquitto_connect_async().
...
The connection wouldn't always complete if mosquitto_loop_start() was
called before mosquitto_connect_async(). Closes #848 .
Thanks to Ian Gough.
Bug: https://github.com/eclipse/mosquitto/issues/848
Signed-off-by: Roger A. Light <roger@atchoo.org>
7 years ago